반응형

사이버 424

[Root Me] Ugly Duckling - 포렌식 / PowerShell / USB

Root Me에서 맨날 웹해킹 문제만 풀다가 기분 전환 겸 풀어본 포렌식 문제 상당히 재미있는 문제였다. 문제 설명을 읽어보면 CEO의 컴퓨터가 손상된 것으로 보이는데, 인턴 기간에 월급을 제대로 받지 못한 직원이 의심스럽다고 한다. 해당 직원의 책상에서 발견된 USB 스틱에서 바이너리 파일을 발견했다고 하는데 이 바이너리 파일을 분석해 달라고 한다. 이게 바로 문제에서 주어지는 file.bin 바이너리 파일이다. 해당 파일을 HxD 프로그램으로 열어보면 이런 내용들이 들어가 있다. 도무지 무슨 내용인지 알 수 가 없다. 대체 무슨 파일일까 고민해보다가 구글에 검색해봤다. 문제 제목인 ugly duckling 과 usb를 조합하여 검색해 봤더니 Hak5 라는 사이트에서 USB Rubber Ducky 라는..

워게임/Root Me 2022.04.26

[Root Me] HTTP - Verb tampering - 웹해킹 / 패킷변조

15점짜리 웹해킹 문제 사실 이 문제를 통해서 Verb tampering 이라는 말을 처음으로 들어봤다. 문제 설명을 읽어보면 security establishment를 bypass하라고 적혀있다. 무슨 뜻인지 감이 잘 안오니 일단 문제페이지에 접속해본다. 문제페이지에 접속해보면 이렇게 로그인 창이 바로 뜬다. 아무래도 bypass 하라는것은 이 로그인 창인것 같다. 로그인에 실패하면 이런 에러메세지가 뜬다. 문제 제목인 Verb tampering 을 검색해봤더니 HTTP 요청 메서드를 변조하는 공격이라고 한다. HTTP 요청 패킷 맨 앞에는 요청의 성격을 나타내는 메서드가 오는데 이 메서드를 다른것으로 바꿔서 요청을 서버로 보내는 것이다. Burp Suite 도구를 이용해서 문제 페이지에 접속할때 패킷..

워게임/Root Me 2022.04.25

[WPICTF] ZOOP - 웹해킹

아주 간단한 웹해킹 문제였다. 별다른 문제 설명도 없고, 문제페이지 주소만 달랑 주어져 있었다. 문제페이지에 접속하면 이런 화면이 나온다. 맨 위에 Attach 버튼과 Send 버튼이 있는걸로 보아 뭔가 파일을 첨부해서 보내는 기능이 있는 웹페이지 인듯 하다. 내용을 살펴보면 Frank 라는 사람이 Johnson 에게 보낸 메일인데, 자기 컴퓨터가 이상하다고 스토리지 서버에서 파일좀 보내줄 수 있냐고 물어본다. (중간에 지운 부분은 나쁜말이 써있어서 지웠다.) 아래쪽에 보내줘야하는 파일의 주소도 같이 보내줬다. Attach 버튼을 눌러서 파일 첨부를 시도해본다. 아까 Frank가 알려준 스토리지에 저장된 파일이 주소를 입력하고, 아래쪽에 있는 Preview 버튼을 누르면 미리보기가 가능하다. 이런식으로 ..

CTF/웹해킹 2022.04.23

[Root Me] HTTP - Improper redicect - 웹해킹

15점짜리 웹해킹 문제 문제 설명을 읽어보면 Get access to index 라고 적혀있다. index 페이지로 접근을 해야하나 보다. 문제페이지에 접근하면 로그인 창이 나온다. 당연히 ID와 비밀번호를 모르기 때문에 로그인할 수 없다. 아까 문제 설명에서 index에 접근해보라고 했으니 index.php 페이지에 접근을 시도해본다. 주소창에 이렇게 index.php 라고 입력을 하면 자동으로 다시 login.php 페이지로 redirect 된다. 자세히 보기위해 f12를 눌러 개발자도구의 네트워크 탭을 이용해본다. 보이는것처럼 index.php로 접근을 할 경우 상태코드가 302 Found 가 오게 된다. 302 코드는 클라이언트가 요청한 리소스가 Location 헤더에 주어진 URL로 일시적으로 ..

워게임/Root Me 2022.04.22

[Root Me] HTTP - POST - 웹해킹 / 패킷변조

15점짜리 웹해킹 문제 문제 설명을 읽어보면 Top score를 얻기 위한 방법을 찾아보라고 한다. 문제 제목에 나와있는 POST는 HTTP 요청 패킷에서 사용하는 메서드의 종류 중 하나이다. POST 메서드를 사용하게 되면 서버로 데이터를 전달할 수 있다. 흔히 보는 로그인 창에서 로그인을 할때, 게시판에 게시글을 작성할때 POST 메서드를 사용한다. 문제페이지에 접속하면 이런 화면이 나온다. 아래있는 버튼을 클릭해서 999999 점을 넘으면 되는 문제인듯 하다. Give a try! 버튼을 누르면 위 처럼 랜덤한 숫자가 생성된다. 999999가 넘는 숫자가 나올때까지 버튼을 누르라는 의도인것 같다. Burp Suite 도구를 사용해서 Give a try! 버튼을 눌렀을때 웹 요청 패킷을 살펴본다. (..

워게임/Root Me 2022.04.21

[Root Me] HTTP - Headers - 웹해킹 / 헤더변조

15점짜리 HTTP 헤더변조 문제 문제 설명을 읽어보면 웹페이지의 관리자 권한으로 접근하라고 한다. 우선 문제페이지에 접속해본다. 접속을 하면 이런 화면이 나온다. Content is not the only part of an HTTP response! 라는 문구가 보이는데 콘텐츠가 HTTP 응답의 모든 부분이 아니라는 말이다. 문제 제목이 Header 이기 때문에 헤더를 먼저 살펴보도록 하자. f12를 눌러 개발자도구에 들어간 후 네트워크 탭을 선택한다. 그상태에서 웹페이지를 새로고침 하면 위처럼 요청/응답 패킷을 볼 수 있는데 응답 패킷의 헤더를 살펴보니 Header-RootMe-Admin 라는 이름의 헤더가 보이고, 그 값이 none 인걸 확인할 수 있다. 해당 헤더를 변조시켜 보자. https:/..

워게임/Root Me 2022.04.21

[CrewCTF] Corrupted - 포렌식 / NTFS / FTK Imager

디스크 포렌식 문제 문제 설명을 읽어보면 주어진 파일을 고쳐서 플래그를 달라고 한다. 주어지는 문제파일은 Corrupted.001 파일인데 확장자가 001인 파일은 디스크 이미지 파일이다. 이렇게 다운받으면 압축파일로 인식이 된다. 보통 이런 001 파일은 바로 압축을 해제하지 않고, 전용 프로그램을 이용해 살펴본다. 무료도구인 FTK Imager 를 사용해본다. (https://accessdata.com/product-download/ftk-imager-version-4-5) FTK Imager를 실행시켜서 lmage File을 선택해준다. 그런다음 주어진 Corrupted.001 파일를 선택해주고 Finish 버튼을 눌러주면 된다. Corrupted.001 파일을 열어보면 말 그대로 파일이 깨졌기 때..

CTF/포렌식 2022.04.20

[CrewCTF] Cuaas - 웹해킹 / SSRF / HTTP Smuggling

재밌게 풀었던 웹해킹 문제. Cleaning urls as a Service 라고 하는 새로운 서비스를 개발했는데, 이걸 공격할 수 있냐고 물음을 던진다. 문제페이지 주소가 주어지고, 웹 소스파일도 같이 주어진다. 문제페이지에 접속하면 이런 화면이 나온다. Clean url as a Service라고 가운데 크게 적혀있고, URL을 입력하는 칸이 중간에 보인다. 시험삼아 www.example.com 이라고 입력해보았다. 그랬더니 아래쪽에 host 이름만 잘라서 example.com 이라고 출력을 해준다. 복잡한 URL에서 host 이름만 골라 출력해주는 서비스인듯 하다. 이번엔 www.example.tld@naver.com 이라고 입력해봤다. 그랬더니 출력값이 naver.com 이라고 나왔다. 원래 ho..

CTF/웹해킹 2022.04.20

[CrewCTF] ez-xor - 암호학 / XOR

이번 대회에서 가장 쉬웠던 문제 암호학으로 분류 되었는데 제목부터가 이지 xor이다. 문제설명조차 간단하다. its simple xor 문제파일로는 flag.enc 파일이 주어진다. BRQDER1VHDkeVhQ5BRQfFhIJGw== flag.enc 파일을 열어보면 이렇게 인코딩된 문자열이 들어있다. 문자열을 봤을때 맨 뒤에 == 이 있다면 무조건 base64로 인코딩 되었다고 생각하면 된다. CyberChef(https://gchq.github.io/CyberChef)에 가서 base64로 디코딩을 해본다. .....U.9.V.9..... . 라는 값이 나오는데 아직까지 무슨말인지 알수가 없다. 왜냐면 이 문제에서 가장 중요한 XOR을 하지 않았기 때문이다. XOR을 하려면 KEY를 알아야 하는데 si..

CTF/암호학 2022.04.20

[DCTF] SQL Tutor - 웹해킹 / SQL Injection

웹해킹의 꽃이라고 불리는 SQL Injection 문제이다. SQL은 Structured Qurey Language의 약자로 데이터베이스에서 데이터를 조회, 삭제, 삽입 하기 위해 쓰는 언어이다. SQL Injection은 부정한 입력을 통해 서버에서 DB로 날리는 SQL을 조작해 데이터베이스를 공격하는 기법이다. 보통 서버와 DB가 상호작용을 하는 로그인창, 게시판, 검색창 등등에서 발생한다. SQL Injection이 가능하게 되면 DB에 저장되어 있는 중요한 정보들이 노출될 수 있어 상당히 위험한 취약점이다. 웹해킹 문제풀이는 캡쳐가 생명인데 아쉽게도 대회가 끝나고서야 문제를 풀어서 캡쳐가 아주 미흡하다.. 문제페이지에 접속하면 이런 화면이 나온다. SQL의 기초를 학습할 수 있게끔 만들어 놓은듯 ..

CTF/웹해킹 2022.04.19
반응형