반응형

워게임 270

[CTFlearn] F1L3 M1X3R - MISC / Python / HxD

CTFlearn에서 제공하는 Hard 난이도의 MISC 문제 MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 문제 설명을 보면 어떤 사진이 MIXER 에 의해 뒤죽박죽이 되어서 잘 동작하지 않는다고 한다. 이 사진을 다시 복구해달라는게 문제의 요구사항이다. 문제에서 주어지는 파일은 fl4g.jpeg 파일이다. 해당 파일을 열어볼려고 하면 파일이 깨진듯 오류가 나면서 열 수가 없다. 해당 파일을 HxD로 열어보면 바로 뭔가 이상한걸 알아챌 수 있다. JPG 파일은 무조건 시작할때 FF D8 ~ 로 시작을 한다. 이런걸 파일 시그니처 라고 하는데 문제에서 같이 주어진 위키피디아 힌트 페이지에서도 확인할 수 있다. 자세히 보면 원래는 FF D8 FF E0 00 10 4..

워게임/CTFlearn 2023.08.07

[CTFlearn] The Adventures of Boris Ivanov Part 2 - 프로그래밍 / PIL

CTFlearn에서 제공하는 프로그래밍 카테고리의 Hard 난이도 문제 지난 Old memories 와 비슷한 문제이다. (https://hackingstudypad.tistory.com/584) 이번 문제 역시도 스테가노그래피와 관련이 있다. 문제 설명을 보면 중요한 정보가 담긴 종이가 찢어졌는데 이걸 복원해야 한다고 한다. 원본의 크기는 500*500 이라고 주어진다. 문제 파일을 열어보면 정말 사진을 세절기에 넣은것처럼 세로 1픽셀, 가로 500픽셀로 500 조각이 나있는 이미지를 볼 수 있다. 프로그래밍 카테고리에 있으니 프로그래밍 해서 이걸 다 이어붙이라는 의미인듯 하다. 이번 문제는 Python PIL 라이브러리를 이용해서 풀었다. PIL은 Python Imaging Library의 약자로 파..

워게임/CTFlearn 2023.08.05

[CTFlearn] Get Into Command Mission - MISC / IDA

CTFlearn 에서 제공하는 Hard 난이도의 MISC 카테고리 문제 MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 문제 설명을 대충 보면 어떤 프로그램을 발견했는데 잠겨있어서 이걸 풀어야 한다는 내용이다. 문제에서 주어지는건 program.exe 파일이다. 해당 프로그램은 cmd 창에서 실행시킬 수 있다. 그냥 실행시켰더니 문법 오류라면서 --help 옵션을 줘서 실행해보라고 한다. --help 옵션을 줘서 실행시켜 보니 문법을 알려준다. 프로그램 형태로 입력하라고 한다. 아무거나 입력해봤더니 Access denied. 가 떴다. 바로 IDA 라는 도구를 이용해 해당 EXE 파일을 분석해봤다. main 함수의 수도코드를 확인해 봤는데 아까 본것처럼 --hel..

워게임/CTFlearn 2023.08.03

[CTFlearn] Old memories - 프로그래밍 / PIL

CTFlearn에서 제공하는 프로그래밍 카테고리의 Hard 난이도 문제 이번 문제는 Hard 치고는 쉬운 편이다. 카테고리도 프로그래밍 보단 스테가노그래피에 가까운것 같다. 문제에서 주어지는 것은 1.png, 2.png 두 개의 파일이다. 이전에 블로그에서 유사한 문제를 다룬적이 있었는데 거의 그대로 하면 된다. (https://hackingstudypad.tistory.com/125) 이번 문제는 Python PIL 라이브러리를 이용해서 풀었다. PIL은 Python Imaging Library의 약자로 파이썬으로 이미지 처리를 할 수 있도록 해주는 라이브러리이다. pip install image pip install pillow 두 명령어를 이용해서 다운로드 받아주면 된다. from PIL impor..

워게임/CTFlearn 2023.08.01

[Root Me] Hash - SHA-2 - 암호학

SHA 해시함수와 관련된 암호학 카테고리 문제 문제 설명을 보면 전송중에 세션을 인터셉트 당했는데 해시 포맷이 알 수 없는것처럼 보인다고 한다. 정답은 SHA-1 해시로 제출하라고 한다. 문제에서 주어지는 해시값은 위와 같다. 가만보면 조금 이상한걸 발견할 수 있는데 해시값을 표현할땐 16진수를 사용하기 때문에 0 ~ 9의 숫자와 a ~ f 까지의 알파벳이 사용된다. 그런데 중간에 뜬금없이 k 가 끼어있다. 주어진 해시값의 길이를 계산해보니 65 글자였는데 *4를 하면 260 이 된다. 그런데 해시 크기가 260인 해시 알고리즘은 존재하지 않는다. 만약 k를 빼게 된다면 64글자가 되고, *4 하면 256 비트가 되니 k가 중간에 인터셉트 되어서 임의로 삽입된 글자일거라 판단했다. 온라인 해시 크랙 사이..

워게임/Root Me 2023.07.30

[HackTheBox] Neonify - 웹해킹 / SSTI / Ruby

HackTheBox에서 제공하는 EASY 난이도의 웹해킹 문제 Ruby 로 개발된 웹페이지에 대한 SSTI 취약점과 관련된 문제이다. 문제 소스파일과 함께 문제페이지 주소가 주어진다. 문제 페이지에 들어가면 Ruby로 개발된 것을 어필하는듯 빨간 보석들이 보이고 중간에 입력할 수 있는 칸이 하나 보인다. 웹 페이지의 기능은 사용자가 입력한 텍스트를 아래쪽에 네온 효과를 줘서 출력시키는 것이 전부이다. 처음엔 SSTI 관련 문제인지 모르고 XSS 페이로드를 테스트 해보고자 를 입력해 보았다. 그랬더니 Malicious Input Detected 라는 문구가 출력된다. class NeonControllers < Sinatra::Base configure do set :views, "app/views" set..

[HackTheBox] Obscure - 포렌식 / Wireshark / John the Ripper

HackTheBox에서 제공하는 HARD 난이도의 포렌식 문제 HARD 로 분류되어있긴 하나 다른 HARD 난이도 문제들에 비해선 쉬운편이다. 문제파일은 다운로드 받으면 패킷캡쳐파일과 support.php 가 들어있다. 패킷캡쳐 파일에는 웹 서버와 통신한 내용이 들이있다. URI가 support.php 인 통신이 있는걸로 보아 이 support.php 가 문제 파일로 제공된 파일과 같은 내용인듯 하다. support.php 에는 난독화된 내용이 들이었다. 그런데 자세히 보면 그렇게 어렵게 난독화되어있지 않다. 마지막에 str_replace 하는게 고작이기 때문에 수작업으로도 깔끔하게 고칠 수 있다. $k="80e32263"; $kh="6f8af44abea0"; $kf="351039f4a7b5"; $p="..

[HackTheBox] FreeLancer - 웹해킹 / SQL Injection / LFI / dirb

HackTheBox 에서 제공하는 웹해킹 문제 MEDIUM 난이도이지만 꽤 어렵다고 느꼈다. 문제페이지에 접속하면 이런 화면이 나온다. 어떤 프리랜서가 본인의 포트폴리오를 올려놓은 이력서 웹사이트이다. F12를 눌러 개발자 도구를 통해 HTML 을 살펴봤다. 주석으로 숨겨진 경로가 하나 보이는데 portfolio.php?id=2 이런식으로 되어 있는것을 보고 id 파라미터를 통해 뭔가 할 수 있을거라고 생각했다. 해당 URL 로 접근해서 id 파라미터를 변경시켜 봤다. ?id=1 이라고 하면 아래쪽에 Log Cabin 뒤에오는 숫자가 1로 바뀐다. 2, 3 으로 바꾸면 마찬가지로 Log Cabin 2, 3 이런식으로 바뀐다. id=1 or true 라고 입력했더니 SQL Injection 이 성공한 듯 ..

[CTFlearn] Bobby Toe's iPad - 포렌식 / Stegsolve / HxD

CTFlearn에서 제공하는 Hard 난이도의 포렌식 문제 다 풀고 보면 그렇게 어렵지 않은 것 같은데 푸는데 시간이 꽤 걸렸다. 문제에서 주어지는 것은 bobbytoesipad.png 파일이다. 해당 파일을 HxD 로 열어 iend 문자열을 검색해 PNG 파일의 맨 끝으로 이동해보면 파일이 정상적으로 끝나지 않고 뒤에 데이터가 더 있는 모습이 보인다. FF D8 FF E0 로 시작하는 데이터가 있는데 이건 JPG 파일의 시그니처 이다. PNG 파일 뒤에 JPG 파일이 숨어있는 것이다. FF D8 FF E0 부터 파일의 맨 끝까지 복사한 뒤 새로만들기로 ipad.jpg 라는 이름으로 저장해줬다. 파일의 맨 처음을 보면 congrats you found me! you win an iPad! 라는 문장이 보..

워게임/CTFlearn 2023.07.12

[CTFlearn] The Keymaker - 포렌식 / JPEG / HxD

오랜만에 포스팅하는 CTFlearn의 문제 Medium 난이도의 포렌식 문제이다. 문제에서 주어지는 The-Keymaker.jpg 파일은 이렇게 생겼다. HxD를 이용해 열어보면 앞부분에 뭔가 수상한 내용들이 보인다. 보기좋게 편집하면 이렇게 생겼는데, 맨 위에 있는건 당연히 가짜 플래그이고 두번째줄부터 뭔가 Base64 인코딩된 내용이 보인다. CyberChef(https://gchq.github.io/CyberChef) 에서 Base64 디코딩을 해봤다. 두번째줄부터 네번째 줄까지는 문제에 대한 힌트였다. 내용을 보면 AES-256-CBC를 이용해 flag 를 암호화 했고, iv 로는 SOF0을, key 로는 SOS 를 사용했다고 나와있다. mmtaSHhAsK9pLMepyFDl37UTXQT0CMltZ..

워게임/CTFlearn 2023.07.10
반응형