반응형

CTF/웹해킹 70

[n00bzCTF] Club_N00b - 웹해킹

초심자들을 위한 CTF 의 첫번째 웹해킹 문제 사실 이번문제는 좀 쉬워서 해킹이라 하기 좀 뭐하다. 문제페이지에 접속하면 나오는 화면이다. 가장 radical 한 해커만 입장할 수 있는 club n00b 이라고 한다. 나는 radical 하지 않기 때문에 입장이 거부되었다는 메세지가 뜬다. 아래쪽에 Check Status 버튼을 눌러봤는데 멤버 리스트에 없다는 메세지가 나온다. URL 을 보니 secret_phrase 파라미터에 nope 가 들어가 있는것이 보인다. nope 를 아까 강조되어있던 단어인 radical 로 변경해줬다. 그리고 다시 새로고침을 하면 웹페이지와 URL에 플래그가 적혀 나오는 것을 볼 수 있다.

CTF/웹해킹 2023.06.21

[DanteCTF] Dumb Admin - 웹해킹 / Webshell

파일업로드 취약점과 관련된 웹 해킹 문제 소스파일은 따로 없이 문제 페이지 주소만 주어진다. 문제페이지에 접속하면 이렇게 로그인 페이지가 나온다. 문제 설명이나 주석 등등에 로그인 계정과 관련한 내용이 없었기에 가장 간단한 SQL Injection 페이로드인 admin' or 1=1-- - 으로 로그인을 시도해봤다. SQL Injection 이 먹혀서 바로 다음 화면인 Admin Dashboard 로 넘어갔다. 파일을 업로드 할 수 있는 기능이 있는데, JPEG 파일만 업로드 가능하도록 안내하고 있다. 파일 업로드 취약점을 이용하기 위해 위와 같이 간단한 php 웹쉘을 작성했다. 파일이름은 shell.php 로 저장했다. 해당 파일을 업로드 시도해보니 .php 확장자는 이미지가 아니라면서 업로드가 거부된..

CTF/웹해킹 2023.06.18

[DanteCTF] Dante Barber Shop - 웹해킹 / SQL Injection

SQL Injection 과 관련된 웹해킹 문제 인젝션 자체는 쉬웠는데 공격 벡터를 찾아내는데 시간이 좀 걸렸다. 소스는 따로 없고 문제페이지 주소만 주어진다. 문제 페이지에 접속하면 이렇게 간단한 미용실 홍보 페이지가 나온다. 오른쪽 위에 보면 Login 버튼이 있는데 들어가면 이렇게 로그인 창이 나온다. 처음에 여기다가 SQL Injecion 을 해서 로그인을 우회하는건줄 알았는데 아무리 해봐도 잘 안돼서 다른 곳을 찾아보게 되었다. F12 개발자도구를 이용해 HTML을 살펴보다가 찾았는데 img src 를 보면 barber2.jpg 부터 barber7.jpg 까지 있는것을 볼 수 있다. barber1.jpg 가 없는게 이상해서 URL에 직접 주소를 쳐 접근해보니 Backup User 의 ID 와 P..

CTF/웹해킹 2023.06.16

[DanteCTF] Unknown Site 2 - 웹해킹

지난 문제에 이어서 계속하는 웹해킹 문제 (https://hackingstudypad.tistory.com/535) 같은 사이트에서 계속해서 문제를 풀면 된다. 지난 문제에서 /robots.txt 를 통해 s3cretDirectory1, 2, 3 디렉토리가 있는것을 확인했다. /s3cretDirectory1 로 접근해보니 Hello There User! 이라는 문구가 출력된다. /s3cretDirectory2 에서는 Hello Again User! 가 출력된다. /s3cretDirectory3 으로 가면 이런 화면이 나오는데 엄청나게 많은 경로들이 보인다. 각 경로들은 접속해보면 Hello There User! 가 출력되는데, 크기 순으로 보니 하나만 크기가 93인 페이지가 있었다. 그래서 접속해봤는데 ..

CTF/웹해킹 2023.06.14

[DanteCTF] Unknown Site 1 - 웹해킹 / robots.txt

이번 CTF 에서 가장 쉬웠던 문제 이전에도 비슷한 유형을 다뤘었다. (https://hackingstudypad.tistory.com/78) 별다른 소스코드 없이 문제페이지 주소만 제공이 된다. 문제페이지에 들어가면 달랑 이 사진하나만 나온다. 구글 로고와 로봇 사진이 있는데 로봇 사진이 나왔다면 무조건 robots.txt 관련된 문제이다. 블로그를 운영한다면 익숙한 단어일 것이다. 이 문제는 robots.txt 를 이용해 푸는 문제이다. 네이버 서치어드바이저에 있는 바로 그 robots.txt이다. robots.txt는 로봇 배제 표준이라고 해서 웹 사이트에 로봇이 접근하는 것을 방지하기 위한 일종의 규약이다. 검색엔진들이 내 웹페이지를 마구마구 접근하는 것을 제한하기 위해서 사용한다. 웬만한 웹사이..

CTF/웹해킹 2023.06.13

[Really Awesome CTF] Really Awesome Monitoring Dashboard - 웹해킹 / SQL Injection

SQL Injection 과 관련된 웹해킹 문제 인젝션 자체는 어렵지 않았는데 벡터를 찾는게 시간이 좀 걸렸다. 문제페이지에 들어가면 보이는 화면이다. 이건 Grafana 라고 불리는 오픈 소스 애널리틱스 시각화 웹 어플리케이션이다. 쉽게 생각해서 어떤 테이터 소스를 이용해서 저런 대시보드 같은거 만드는 것이다. 벡터는 이 부분이었다. 눈에 직접적으로 보이지 않아서 찾는데 좀 걸렸다. 대시보드를 몇초마다 갱신하면서 데이터베이스로 SQL 쿼리를 계속 날리는데 쿼리의 내용을 queryText 에 담아서 보내고 있다. 몇가지 테스트를 해보니 서버에서 사용하는 DB는 SQLite 였다. SELECT name From sqlite_master WHERE type = 'table' AND name NOT LIKE ..

CTF/웹해킹 2023.06.11

[angstromCTF] shortcircuit - 웹해킹 / Javascript

아주 간단한 웹해킹 문제이다. 문제페이지 주소만 주어진다. 문제페이지에 접속하면 이렇게 username, password 를 입력하는 칸이 있다. F12를 눌러 개발자도구를 열어 자바스크립트 코드를 보면 username 에는 admin 이 들어가야하고, password 에 들어간 값이 chunk, swap 연산을 거쳐 7e08250c4aaa9ed206fd7c9e398e2}actf{cl1ent_s1de_sucks_544e67e6317199e454f4d2bdb04d9e419ccc7f12024523398ee02fe7517fffa9251 이런 결과값이 나와야 한다. 결과값을 자세히 보면 actf{} 가 보이고, 함수 이름이 swap 인걸로 보아 뭔가 입력값을 잘라서 순서를 바꿔놓은것 처럼 보였다. 개발자도구의 ..

CTF/웹해킹 2023.05.17

[angstromCTF] directory - 웹해킹 / Dirbuster

Dirbuster 를 사용해서 풀 수 있는 간단한 웹해킹 문제이다. 문제 다 풀어놓고 보니 문제페이지를 캡쳐를 못떴다. 문제페이지에 접속하면 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10 ... 이렇게 링크가 쭉 나열되어 있다. 1부터 4999 까지 있었던걸로 기억하는데 이중에 단 하나가 플래그가 적힌 페이지이다. 나머지 페이지들을 들어가면 아무것도 없다는 메세지가 나온다. 시도해볼 경우의 수가 5000개 밖에 없으니 Dirbuster 라는 도구를 사용해보기로 했다. Dirbuster 는 칼리 리눅스에 내장되어 있다. 이렇게 검색하면 바로 찾을 수 있다. Dirbuster 에서 이렇게 설정하면 된다. Target URL 을 넣어주고 Char set 는 숫자만 필요하니 0-9 로 지정해준다. 길이..

CTF/웹해킹 2023.05.16

[angstromCTF] Celeste Tunneling Association - 웹해킹 / Burp Suite

간단한 웹해킹 문제이다. 문제페이지 주소와 소스코드가 주어진다. 문제페이지에 접속하면 까만 화면에 이렇게 하얀 글씨가 써있다. 이거 외엔 별다른 기능이 없어서 소스코드를 바로 열어봤다. # run via `uvicorn app:app --port 6000` import os SECRET_SITE = b"flag.local" FLAG = os.environ['FLAG'] async def app(scope, receive, send): assert scope['type'] == 'http' headers = scope['headers'] await send({ 'type': 'http.response.start', 'status': 200, 'headers': [ [b'content-type', b'tex..

CTF/웹해킹 2023.05.15

[angstromCTF] Celeste Speedrunning Association - 웹해킹 / Python

간단한 웹해킹 문제 말 그대로 Speedrunning 해야하는 문제였다. 문제페이지에 접속하면 이런 화면이 나온다. 뭔가 순위표가 나와있는데 1등인 Old Lady 가 0 seconds 라고 나와있다. 느낌상 1등보다 빨라야 플래그를 얻을 수 있는것 같다. 안내되어있는 /play 경로로 들어가봤다. /play 로 들어가보면 Press when done! 라는 버튼이 하나 보인다. 버튼을 누르면 /submit 으로 이동하는데 이기지 못했다는 안내 문구가 나온다. /play 경로로 다시 돌아가 F12를 눌러 개발자도구를 통해 소스를 확인해봤다. 버튼을 눌렀을때 어떤 데이터가 전달되는지 봤는데 1682427392.763026 이라는 숫자가 전달되고 있었다. DCode 도구로 확인해보니 이건 현재시간을 Unix..

CTF/웹해킹 2023.05.14
반응형