반응형

분류 전체보기 712

[Root Me] Java - Server-side Template Injection - 웹해킹 / SSTI

30점짜리 웹해킹 문제 문제 제목에 나와있는 Server Side Template Injection 문제이다. 오래전에 블로그에서 SSTI 관련된 문제를 다룬적이 있었다. (https://hackingstudypad.tistory.com/150) 그때도 역시나 Root Me에서 제공하는 문제였는데, 다른점이 있다면 그때는 Python 기반의 웹이었고, 이번엔 Java 기반의 웹이라는 것이다. SSTI는 템플릿 엔진으로 웹 어플리케이션을 구동하는 경우, 공격자가 템플릿 구문을 악용하여 삽입할 수 있는 취약점이다. 이렇게 템플릿 구문이 삽입되게 되면, 원격 명령어 실행도 가능하게 되는 위험한 취약점이다. 이번 문제의 목표는 SSTI 취약점을 이용해 서버 운영체제 명령어를 실행하여 서버 내에 숨겨진 SECRE..

워게임/Root Me 2022.08.18

[CTFlearn] Hextroadinary - 암호학 / XOR

CTFlearn 의 열 세번째 문제 이번에는 암호학 문제이다. CTFlearn 에서 제공하는 문제들을 보면 아주아주 쉬운문제부터 아주 천천히 난이도를 올려가는거 같다. 조금 더 어려운 문제를 풀면서 포스팅 하고 싶은데 아직까진 너무 쉬운 문제들만 나와서 좀 아쉽다. 이 문제역시 암호학 카테고리에 있지만 암호라고 보기엔 너무 간단하다. 문제 설명을 읽어보면 세계 최고의 해커가 되기 위해서는 ROXy 라는 코더를 만나야 한다고 한다. ROXy는 짧은 코드의 암호를 만드는 대가라고 한다. 0xc4115 0x4cf8 그러면서 주어지는건 두 개의 16진수 값이다. 조금 경험이 있다면 ROXy 의 이름에서 벌써 눈치를 챘을 것이다. ROXy를 거꾸로 써보면 yXOR 이되는데, 대문자만 읽으면 XOR, Exclusi..

워게임/CTFlearn 2022.08.17

[SharkyCTF] Z3ROBOTWAVES - 리버싱 / IDA

리버싱 문제 그렇게 어렵진 않았는데 매우 귀찮은 문제였다. 문제 설명을 읽어보면 개발자가 어떤 로봇을 만들었는데 그 로봇이 잠겨서(Locked) 비밀번호를 요구한다고 한다. 문제에서 주어지는 파일은 z3_robot 파일이다. 리눅스 환경에서 file 명령어를 통해 어떤 파일인지 살펴보면 ELF 파일이라고 한다. ELF는 리눅스에서 실행가능한 실행파일이다. 터미널에서 ./z3_robot 이라고 입력하면 실행이 가능하다. 실행시켜봤더니 아까 들었던것 처럼 비밀번호를 요구하고 있다. 시험삼아 hello 라고 입력해봤는데 그랬더니 로봇이 기분나쁘게 웃으면서 프로그램이 종료되었다. IDA 라는 디스어셈블러를 이용해 문제파일을 살펴보았다. main 함수의 수도코드를 보면, fgets 함수를 이용해 s 라는변수에 사..

CTF/리버싱 2022.08.16

[Root Me] CISCO - password - 포렌식 / John the Ripper

Root Me의 여섯번째 네트워크 포렌식 문제 풀이수가 꽤 많길래 쉬운 문제일거라고 생각했는데 생각보다 시간이 오래걸렸다. 문제의 목표는 password 를 찾는것이다. 문제에서는 ch15.txt 파일이 주어진다. ! ! Last configuration change at 13:41:43 CET Mon Jul 8 2013 by admin ! NVRAM config last updated at 11:15:05 CET Thu Jun 13 2013 by admin ! version 12.2 no service pad service password-encryption ! isdn switch-type basic-5ess ! hostname rmt-paris ! security passwords min-lengt..

워게임/Root Me 2022.08.15

[CTFlearn] WOW.... So Meta - 포렌식 / ExifTool

CTFlearn 의 열두번째 문제 이번엔 포렌식 문제이다. 문제 제목에서 알 수 있는 것처럼 Metadata 와 관련된 문제다. 문제 설명을 읽어보면 target이 찍은 사진을 입수했는데 이 사진을 이용해서 그사람에 대한 정보를 알아내라고 한다. 다운로드 URL이 주어지는데 해당 링크로 접속하면 이런 해변 사진을 다운로드 받을 수 있다. 얼마 전에 이 문제와 비슷한 문제를 블로그에서 다룬 적이 있다. (https://hackingstudypad.tistory.com/212) 다른 워게임 사이트인 Root Me 에서 출제된 문제인데, 이번 문제도 똑같이 EXIF 메타데이터를 이용해서 풀면 된다. EXIF는 Exchangeable Image File Format 의 약자로 디지털 카메라에서 사용되는 메타데이..

워게임/CTFlearn 2022.08.14

[SharkyCTF] RATTATATACACS - 포렌식 / Tacacs / Wireshark / Cisco

CTF를 통해 처음 경험해보는 유형의 네트워크 포렌식 문제였다. 문제 자체는 그렇게 어렵지 않고 신기하고 재미있었다. 문제 설명 부분이 뭔가 맘에 든다. Slience is gold. I listen to every move on this network. 네트워크 사용에 있어서 경각심을 빡 하고 주는 좋은 문구인거 같다. 문제파일로 주어지는것은 Chall.pcapng 파일이다. pcapng 파일은 Wireshark 라는 도구를 이용해 열어볼 수 있다. 와이어샤크로 열어보면 처음엔 이상한 알 수 없는 패킷들이 많이 보인다. 조금만 밑으로 내려서 22번 패킷으로 가면 문제 제목에 써있는 TACACS+ 라는 프로토콜로 통신한 흔적이 보인다. 처음 들어본 프로토콜이었는데, Terminal Access Contr..

CTF/포렌식 2022.08.13

[Root Me] Bluetooth - Unknown file - 포렌식 / Wireshark

Root Me의 다섯번째 네트워크 패킷 포렌식 문제 이번엔 블루투스와 관련된 문제이다. 문제설명을 읽어보면 NSA 에서 근무하는 친구가 해커의 컴퓨터에서 읽을 수 없는 파일을 찾았는데, 알 수 있는 정보는 오로지 컴퓨터와 휴대폰 사이의 통신이라고 한다. 정답은 MAC 주소와 휴대폰 이름을 합한것의 SHA-1 해시값이라고 한다. 아래쪽에 친절하게 정답 예시도 보여주고 있다. 문제에서 주어진 파일은 ch18.bin 파일이다. 일단 네트워크 패킷 포렌식에 관련된 문제이고, 또 문제 설명에서 컴퓨터와 휴대폰 사이의 통신을 언급했으므로 Wireshark 프로그램을 이용해서 파일을 열어본다. 와이어샤크 실행 후 ch18.bin 파일을 드래그 & 드롭 하면 위처럼 패킷 내용이 잘 보이게 된다. 패킷 총 갯수가 27개..

워게임/Root Me 2022.08.12

[CTFlearn] Binwalk - 포렌식 / HxD

CTFlearn의 열한번째 문제 이전 문제가 Medium 이라서 계속 중간 난이도 문제가 나올 줄 알았는데 다시 Easy로 돌아왔다. 문제설명을 읽어보면 주어지는 파일 안에 다른 파일이 숨겨져 있는데, 그걸 추출할 수 있냐고 물어본다. 아래쪽에 적혀있는 URL로 접근해보면 PurpleThing.jpeg 파일을 다운로드 받을 수 있다. 이게 주어진 사진이다. 문제에서 의도하는 방식으로 풀면 너무 쉽게 끝나서 다른 방법으로 먼저 풀어보려고 한다. 주어진 파일을 HxD 도구를 이용해 열어본다. 파일이 89 50 4E 47 으로 시작하는것을 알 수 있다. 89 50 4E 47로 시작하는것은 PNG 파일의 특징이다. 확장자는 jpeg 였는데 사실은 PNG 파일이었다. 이런걸 파일 시그니처 라고 한다. 또한 PNG..

워게임/CTFlearn 2022.08.11

[SharkyCTF] Pain in the ass - 포렌식 / Wireshark / Blind SQL injection

네트워크 패킷 포렌식 문제 문제 제목이 좀 당황스러운데 관용어로 아주 귀찮은 것을 뜻한다고 한다. 실제로 문제 풀이를 보면 그렇게 어렵진 않은데 아주 귀찮다.. 문제 설명을 보면 어떤 사람이 데이터베이스를 덤프한것 같다고 한다. 그래서 어떤 자료들이 유출되었는지 알아봐달라고 요청한다. 주어지는 문제파일은 pain-in-the-ass.pcapng 파일이다. pcapng 파일은 Wireshark 라는 도구를 이용해서 열어볼 수 있다. 와이어샤크로 패킷파일을 열어보면 여섯번째 패킷부터 바로 실마리가 보인다. PostgreSQL 패킷 흔적이 보이는데 username이 d4rk2phi 인 계정의 비밀번호를 알아내기 위해 Blind SQL Injection 공격을 시도하고 있는 모습이 보인다. Blind SQL I..

CTF/포렌식 2022.08.10

[Root Me] Command injection - Filter bypass - 웹해킹 / RequestBin

예전에 풀었던 Command injection 문제의 업그레이드 버전이다. (https://hackingstudypad.tistory.com/74) 이전 문제 풀이를 읽어보면 이해하는데 조금 더 도움이 될것같다. 10점에서 30점으로 점수가 팍 오른 두번째 문제 그만큼 생각을 좀 해야한다. 문제의 목표는 웹페이지의 취약점을 찾아 exploit 하는것이다. 플래그는 index.php 파일안에서 찾을 수 있다고 한다. 문제페이지에 들어가면 입력창이 하나 있고, 제출 버튼이 나온다. 입력창에는 기본으로 127.0.0.1이 들어가 있다. 일단 먼저 제출버튼을 눌러본다. 제출을 누르면 Ping OK 라는 문구가 출력된다. 이전 문제는 ping 127.0.0.1 -c 3 명령어의 실행 결과가 그대로 출력됐는데, 이..

워게임/Root Me 2022.08.09
반응형