Skip to main content

PicoCTF2018 – Web – Artisinal Handcrafted HTTP 3


PicoCTF2018 – Web – Artisinal Handcrafted HTTP 3

Objective:
We found a hidden flag server hiding behind a proxy, but the proxy has some... _interesting_ ideas of what qualifies someone to make HTTP requests.  Looks like you'll have to do this one by hand.  Try connecting via nc 2018shell.picoctf.com 18685, and use the proxy to send HTTP requests to `flag.local`.  We've also recovered a username and a password for you to use on the login page: `realbusinessuser`/`potoooooooo`.

Hint:
(1)    _Be the browser._  When you navigate to a page, how does your browser send HTTP requests?  How does this change when you submit a form?

Solution:

This is my first-time sending HTTP GET and POST manually, so I leaned pretty heavily on online resources

@pico-2018-shell:~$ nc 2018shell.picoctf.com 18685
Real Business Corp., Internal Proxy
Version 2.0.7
To proceed, please solve the following captcha:

 _____          __          
/ __  \        /  |   ______
`' / /' __  __ `| |  |______|
  / /   \ \/ /  | |   ______
./ /___  >  <  _| |_ |______|
\_____/ /_/\_\ \___/        
                            
                            


> 2
Validation succeeded.  Commence HTTP.

GET /
HOST: flag.local

HTTP/1.1 200 OK
x-powered-by: Express
content-type: text/html; charset=utf-8
content-length: 321
etag: W/"141-LuTf9ny9p1l454tuA3Un+gDFLWo"
date: Thu, 26 Sep 2019 18:24:23 GMT
connection: close


                        <html>
                                                <head>
                                                                <link rel="stylesheet" type="text/css" href="main.css" />
                                                </head>
                                                <body>
                                                                <header>
                                                                                <h1>Real Business Internal Flag Server</h1>
                                                                                <a href="/login">Login</a>
                                                                </header>
                                                                <main>
                                                                                <p>You need to log in before you can see today's flag.</p>
                                                                </main>
                                                </body>
                                </html>


Okay from here we see there is a login page in the HTML /login let’s get /login and see what is shows


@pico-2018-shell:~$ nc 2018shell.picoctf.com 18685
Real Business Corp., Internal Proxy
Version 2.0.7
To proceed, please solve the following captcha:

 _____            ___         
|  ___|          /   |  ______
|___ \  __  __  / /| | |______|
    \ \ \ \/ / / /_| |  ______
/\__/ /  >  <  \___  | |______|
\____/  /_/\_\     |_/        
                              
                              


> 20
Validation succeeded.  Commence HTTP.

GET /Login HTTP/1.1
host: flag.local

HTTP/1.1 200 OK
x-powered-by: Express
content-type: text/html; charset=utf-8
content-length: 498
etag: W/"1f2-UE5AGAqbLVQn1qrfKFRIqanxl9I"
date: Thu, 26 Sep 2019 18:24:49 GMT
connection: close


                        <html>
                                                <head>
                                                                <link rel="stylesheet" type="text/css" href="main.css" />
                                                </head>
                                                <body>
                                                                <header>
                                                                                <h1>Real Business Internal Flag Server</h1>
                                                                                <a href="/login">Login</a>
                                                                </header>
                                                                <main>
                                                                                <h2>Log In</h2>
                                                                               
                                                                                <form method="POST" action="login">
                                                                                                <input type="text" name="user" placeholder="Username" />
                                                                                                <input type="password" name="pass" placeholder="Password" />
                                                                                                <input type="submit" />
                                                                                </form>
                                                                </main>
                                                </body>
                                </html>




It needs a username password luckily they gave this to us, let do a POST with and give the user/pass to the login page


@pico-2018-shell:~$ nc 2018shell.picoctf.com 18685
Real Business Corp., Internal Proxy
Version 2.0.7
To proceed, please solve the following captcha:

 _____             ____         
|____ |           / ___|  ______
    / /  ______  / /___  |______|
    \ \ |______| | ___ \  ______
.___/ /          | \_/ | |______|
\____/           \_____/        
                                
                                


> -3
Validation succeeded.  Commence HTTP.

POST /login HTTP/1.0
Host: flag.local
Content-Type: application/x-www-form-urlencoded
Content-Length: 38

user=realbusinessuser&pass=potoooooooo
HTTP/1.1 302 Found
x-powered-by: Express
set-cookie: real_business_token=PHNjcmlwdD5hbGVydCgid2F0Iik8L3NjcmlwdD4%3D; Path=/
location: /
vary: Accept
content-type: text/plain; charset=utf-8
content-length: 23
date: Thu, 26 Sep 2019 18:34:34 GMT
connection: close

OK so we get a cookie back from the login let’s pass the cookie to the login page and see what happens


@pico-2018-shell:~$ nc 2018shell.picoctf.com 18685
Real Business Corp., Internal Proxy
Version 2.0.7
To proceed, please solve the following captcha:

 ______           _____         
|___  /          |____ |  ______
   / /   ______      / / |______|
  / /   |______|     \ \  ______
./ /             .___/ / |______|
\_/              \____/         
                                
                                


> 4
Validation succeeded.  Commence HTTP.

GET /
host: flag.local
cookie: real_business_token=PHNjcmlwdD5hbGVydCgid2F0Iik8L3NjcmlwdD4%3D

HTTP/1.1 200 OK
x-powered-by: Express
content-type: text/html; charset=utf-8
content-length: 438
etag: W/"1b6-bgxSS92CBVm1uJx+NK7DdppIBp8"
date: Thu, 26 Sep 2019 18:40:06 GMT
connection: close


                                <html>
                                                <head>
                                                                <link rel="stylesheet" type="text/css" href="main.css" />
                                                </head>
                                                <body>
                                                                <header>
                                                                                <h1>Real Business Internal Flag Server</h1>
                                                                                <div class="user">Real Business Employee</div>
                                                                                <a href="/logout">Logout</a>
                                                                </header>
                                                                <main>
                                                                                <p>Hello <b>Real Business Employee</b>!  Today's flag is: <code>picoCTF{0nLY_Us3_n0N_GmO_xF3r_pR0tOcol5_5f5f}</code>.</p>
                                                                </main>
                                                </body>
                                </html>


Now we got the flag  picoCTF{0nLY_Us3_n0N_GmO_xF3r_pR0tOcol5_5f5f}

Comments

Popular posts from this blog

HacktheBox - Retired - Frolic

HacktheBox - Retired - Frolic Recon Let's start out with a threader3000 scan Some interesting results here Port 22 and 445 aren't uncommon… but 1880 and 9999 are.. Let's let nmap run through these ports  Option Selection: 1 nmap -p22,445,1880,9999 -sV -sC -T4 -Pn -oA 10.10.10.111 10.10.10.111 Host discovery disabled (-Pn). All addresses will be marked 'up' and scan times will be slower. Starting Nmap 7.91 ( https://nmap.org ) at 2021-05-05 16:17 EDT Nmap scan report for 10.10.10.111 Host is up (0.060s latency). PORT     STATE SERVICE     VERSION 22/tcp   open  ssh         OpenSSH 7.2p2 Ubuntu 4ubuntu2.4 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: |   2048 87:7b:91:2a:0f:11:b6:57:1e:cb:9f:77:cf:35:e2:21 (RSA) |   256 b7:9b:06:dd:c2:5e:28:44:78:41:1e:67:7d:1e:b7:62 (ECDSA) |_  256 21:cf:16:6d:82:a4:30:c3:c6:9c:d7:38:ba:b5:02:b0 (ED25519) 445/tcp  open  netbios-ssn Samba smbd 4.3.11-Ubuntu (workgroup: WORKGROUP) 1880/tcp open  http        Node.js (Express middlewar...

Hack The Box - Retired - Laboratory

HackTheBox - Laboratory - Retired Starting off with a quick scan using threader6000 /opt/threader3000/threader6000.py 10.10.10.216 Ports 22,80,443 came back. Run nmap against these ports. nmap -p22,80,443 -sV -sC -T4 -Pn -oN 10.10.10.216 10.10.10.216 nmap -p22,80,443 -sV -sC -Pn -T4 -oN 10.10.10.216 10.10.10.216 Host discovery disabled (-Pn). All addresses will be marked 'up' and scan times will be slower. Starting Nmap 7.91 ( https://nmap.org ) at 2021-04-13 17:43 EDT Nmap scan report for laboratory.htb (10.10.10.216) Host is up (0.060s latency). PORT    STATE SERVICE  VERSION 22/tcp  open  ssh      OpenSSH 8.2p1 Ubuntu 4ubuntu0.1 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: |   3072 25:ba:64:8f:79:9d:5d:95:97:2c:1b:b2:5e:9b:55:0d (RSA) |   256 28:00:89:05:55:f9:a2:ea:3c:7d:70:ea:4d:ea:60:0f (ECDSA) |_  256 77:20:ff:e9:46:c0:68:92:1a:0b:21:29:d1:53:aa:87 (ED25519) 80/tcp  open  http     Apache httpd 2.4.41 |_...

A collection of online Security CTF and Learning sites

 Hellbound Hackers    Embedded Security CTF Arizona Cyber Warfare Range Over The Wire - Bandit Pico CTF 2018 Hack The Box.eu Root Me: Challenges/Forensic RingZero CTF Vulnerable By Design - Vulnerable VMs Murder Mystery SQL Challenge Incident Response Challenge Authentication Lab Walkthroughs Defcon CTF Archives Matrix Holiday Hack Cyber Defenders | Blue Team and CTF Crypto Hack - learning Crypto Video Learning Zero to Hero Pentesting by The Cyber Mentor