반응형

해킹 640

[CTFlearn] Brute Force is Fun! - 포렌식 / HxD / Python

CTFlearn의 여든아홉번째 문제 계속해서 이어지는 Hard 난이도 문제이다.. 이상하게 배점이 높은데 사실 그렇게 어렵진 않다. 문제에서 주어지는 것은 legotroopers.jpg 파일이다. 해당 파일을 HxD에서 열어 중간쯤으로 내려가봤다. JPG 파일은 항상 FF D9 라는 값으로 끝난다. 파일에서 FF D9 값이 나오면, 그 뒤에는 아무런 값이 없어야 정상이다. 그런데 이 파일은 FF D9 다음에 50 4B 03 04 로 시작하는 데이터가 오고있는것을 볼 수 있다. 이렇게 50 4B 03 04 로 시작하는 파일은 ZIP 확장자를 가지는 파일이다. 이런것을 파일 시그니처 라고 한다. 50 4B 03 04 부터 파일의 끝까지 추출해서 test.zip 으로 저장했다. 압축을 풀려고 봤더니 비밀번호가..

워게임/CTFlearn 2023.04.23

[PCTF] Proxy It - 웹해킹 / Burp Suite / dirb

쉬운듯 쉽지 않았던 웹해킹 문제 제목이 Proxy 인걸 보니 Proxy 도구인 Burp Suite 를 써야할것 같다. 문제 페이지에 접속하면 이런 화면이 나온다. /flag 경로를 확인하라고 한다. URL에 /flag 를 입력해 해당 경로로 접근을 시도해보니 403 Forbidden 에러가 났다. administrative rules 에 의해 금지되었다고 나온다. 버프 스위트를 이용해 요청 패킷을 잡아두고 요청하는 경로를 /flag 에서 /%66lag 로 바꿨다. %66 은 f 를 인코딩한 값이다. 결국 똑같은 값인데 필터링이 우회되어서 오른쪽 응답 패킷을 보면 플래그가 나오는것을 볼 수 있다. 근데 뭔가 불완전한 플래그 처럼 보인다. 숨겨진 경로가 있나 싶어 dirb 도구를 이용해 brute force..

CTF/웹해킹 2023.04.22

[CTFlearn] Skynet Is (Almost) Taking Over - 암호학 / RsaCtfTool

CTFlearn 의 여든여덟번째 문제 4연속 Hard 난이도의 문제가 나와서 살짝 쫄았는데 이번 문제는 아주 쉽게 풀 수 있었다. 문제 설명이 아주 장황하다. 양자 컴퓨팅 어쩌고 하면서 나오는데 사실 이 의도를 잘 모르겠다. RSA 에 관련한 문제인데 RSA는 지금까지도 아주 많이 사용하는 공개키 알고리즘의 이름이다. 개발자인 Rivest, Shamir, Adleman 세명의 이름 앞글자를 따서 RSA 라고 이름을 붙혔다. 엄청나게 큰 숫자일수록 소인수분해가 어렵다는것에 착안해서 설계되었다. RSA의 원리는 아래와 같다. 1. 두 소수 p, q를 준비한다. 2. p-1, q-1과 각각 서로소(1외에는 공약수가 없는 수)인 정수 e를 준비한다. 3. ed를 (p-1)(q-1)으로 나눈 나머지가 1의 되도록..

워게임/CTFlearn 2023.04.20

[PINGCTF] easy1 - 웹해킹 / dirb / Verb tampering

제목부터 쉬운 웹해킹 문제 풀이를 알고나면 쉬웠는데 막상 풀어보면 막막했던 문제이다. 다들 그랬는지 풀이수도 그렇게 많지 않았다. 문제페이지에 접속하면 보이는 화면이다. Hii :)) 만 출력되고 아무런 기능이 없다. 테스트하기 위해 /aaa 처럼 아무 경로나 입력해 봤는데 404 페이지도 안뜨고 그냥 계속 Hii 만 나온다. dirb 라는 도구를 이용해 가능한 경로들을 Brute Force 해봤다. 그랬더니 /flag 경로가 있다는 것을 알아냈다. 바로 /flag 경로로 접속을 시도해 봤는데 Noo, you didn't get it :( 이라고 출력되었다. get 에서 힌트를 얻었는데 문제 설명에도 보면 Can you GET the 'flag'? :D 라면서 강조하고 있다. 메소드를 조작하면 되는듯 했..

CTF/웹해킹 2023.04.19

[HackTheBox] Impossible Password - 리버싱 / IDA

HackTheBox 에서 제공하는 쉬운 난이도의 리버싱 문제 간단하게 풀 수 있다. 문제에서 주어지는 파일은 impossible_password.bin 파일이다. 리버싱 문제이니 고민하지 않고 바로 IDA 로 열어보았다. main 함수에서 f5를 눌러 수도코드를 살펴보니 * 을 출력한 뒤에 사용자 입력을 받는데 그 값이 SuberSeKretKey 일 경우 다음으로 넘어가게 되어있다. 그리고나서 ** 을 출력하고 또 입력을 받는데 이번엔 그 값이 v3 의 값과 같아야 한다. v3 는 sub_40078D 의 수행결과가 저장되는데 sub_40078D 를 들어가 봤더니 시간을 시드값으로 해서 랜덤한 값을 생성하고 그 값의 % 94 + 33 을 계산해 V3 에 집어넣고 있었다. 사실상 이걸 알아내는건 불가능하다...

[Tenable CTF] Reggie McRegex - MISC / 정규식

정규식과 관련된 MISC 문제 MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 문제 제목부터 Regex 를 언급하며 정규식을 사용해야 한다는 것을 알려주고 있다. 문제 설명에는 플래그의 형식에 관한 내용이 적혀있다. 플래그 포맷은 flag{here_is_a_flag} 와 같은 형태이며 중괄호 안에는 알파벳 소문자와 언더바(_) 로 이루어져 있고 최대 길이는 16이라고 한다. 이게 문제에서 주어지는 haystack.txt 파일의 내용이다. 캡쳐본이라 짤려서 그런데 실제로는 훨씬 양이 많다. 이중에서 문제에서 언급한 플래그 포맷을 찾아내야 한다. 맨눈으로 찾는것은 불가능에 가깝기 때문에 정규식을 사용해서 풀어본다. 온라인으로 정규식을 테스트할 수 있는 사이트(http..

CTF/MISC 2023.04.16

[CTFlearn] Music To My Ears - 포렌식 / faad

CTFlearn의 여든 일곱번째 문제 계속해서 Hard 난이도의 문제가 나와서 부담스러워 지기 시작했다. 이번엔 포렌식 문제이다. 문제에서 주어지는 것은 hereisyourflag.m4a 파일이다. 파일을 클릭해서 재생시켜보려 했더니 이런 문구가 떴다. 파일이 온전하지 않은 상태인듯 하다. 일단 HxD로 열어봤다. 아직까진 뭐가 문제인지 모른다. https://www.file-recovery.com/m4a-signature-format.htm MPEG4 Audio Signature Format: M4A,M4B,M4P Documentation and Recovery Examples MPEG-4 Part 14 Audio (M4A,M4B,M4P) Format & Recovery Example M4A is a ..

워게임/CTFlearn 2023.04.15

[Tenable CTF] Funny Sound - 포렌식 / Oscilloscope

WAV 파일과 관련된 스테가노그래피 문제 문제 배점은 낮았는데 풀이 수가 엄청 적었다. 푸는 방법만 알면 쉽게 해결할 수 있는데 문제는 그 방법이 아주 잘 알려지지 않은 방법이었다는것.. 문제에서 주어지는 파일은 flag1.wav 파일이다. 파일을 재생시켜 보면 지이이잉 지이이잉 하는 귀아픈 소리가 들린다. 처음엔 wav 파일이라 기존에 문제 풀었던것 처럼 Audacity 나 DeepSound 도구를 이용해 풀어보려 했다. 하지만 해당 툴들로는 의미있는 결과를 얻을 수가 없었다. https://dood.al/oscilloscope/ https://dood.al/oscilloscope/ Set "Audio Volume" to zero to avoid feedback. Stereo input may not ..

CTF/포렌식 2023.04.14

[CTFlearn] Python Reversal - 프로그래밍

CTFlearn의 여든 여섯번째 문제 지난 문제에 이어서 프로그래밍 카테고리의 Hard 난이도 문제이다. (https://hackingstudypad.tistory.com/469) 이번엔 제공되는 언어가 파이썬이다. import base64 as rtfd import webbrowser import time def mikeSwift(cre): sto = [] gre = "" for i in cre: sto.append(i+str(len(i))) sto.append("h4ck" + i) for i in sto: gre+=i return gre def prompt(): return bytes(input("Welcome to the loading dock. What is the password?\t"), 'u..

워게임/CTFlearn 2023.04.12

[Tenable CTF] Look at all the pixels, where do they all come from - 포렌식 / PIL

PIL 라이브러리를 이용해 풀 수 있는 포렌식 문제 문제 제목이 참 장황하다. 문제 제목에서 pixel 이라는 단어를 통해 간접적으로 힌트를 주고 있다. 문제에서 제공되는 pip.png 파일은 이렇게 생겼다. 369 * 369 사이즈의 노이즈 처럼 생긴 사진이다. 아까 언급한것 처럼 이번 문제는 Python PIL 라이브러리를 이용해서 풀었다. PIL은 Python Imaging Library의 약자로 파이썬으로 이미지 처리를 할 수 있도록 해주는 라이브러리이다. pip install image pip install pillow 두 명령어를 이용해서 다운로드 받아주면 된다. from PIL import Image img = Image.open('pip.png').convert('RGB') xlen = 3..

CTF/포렌식 2023.04.10
반응형