반응형

해킹 640

[CTFlearn] Corrupted File - 포렌식 / HxD / Base64

CTFlearn의 쉰번째 문제 이번엔 Hard 난이도의 포렌식 문제이다. 하지만 역시나 그렇게 어렵진 않다. 문제 설명에서 힌트를 주고 있다. 파일 헤더에 문제가 있어 파일을 열지 못하는것 같다고 한다. 문제에서 주어지는 파일은 unopenable.gif 파일이다. 확장자가 .gif 인걸 보니 원래는 GIF 파일이었나 보다. 파일을 열어보면 문제에서 언급한것 처럼 파일이 깨진듯 이 파일 형식은 지원되지 않는 것 같습니다. 라고 나온다. 주어진 unopenable.gif 파일을 HxD 라는 도구를 실행시켜, 드래그 앤 드랍한다. (HxD 다운링크 : https://mh-nexus.de/en/downloads.php?product=HxD20) 그러면 위처럼 16진수로 되어있는 값들이 보인다. 이 16진수 값..

워게임/CTFlearn 2022.12.30

[Affinity CTF] Path of Double-Dipping - 웹해킹 / Double Encoding

조금만 생각해보면 아주 쉬운 웹해킹 문제 Write up을 쓰려고 보니 캡쳐가 조금 미흡했다.. 이번 문제도 별다른 설명이나 파일 없이 문제 페이지 주소만 주어진다. 문제 페이지에 접속하면 위와 같은 화면이 나오는데 중간에 challenge description: here/is/the_flag 라고 서버에서 플래그가 있는 위치를 알려주고 있다. 이 부분을 캡쳐를 못했는데, URL에 http://web3.affinityctf.com/here/is/the_flag 라고입력하면 접속이 불가능하다고 나온다. 동작하는것을 보니 here/is/the_flag 에 있는 문자중 어떤것이 필터링이 걸려있는 느낌이었다. 이 필터링을 어떻게 우회하느냐가 관건이었는데 문제 제목에서 사실 힌트를 다 주고 있었다. Double ..

CTF/웹해킹 2022.12.29

[HackTheBox] Easy Phish - OSINT / nslookup / dig

쉬운 난이도의 OSINT 문제 OSINT는 Open Source Intelligence 의 약자로 공개출처정보라는 뜻이다. 말 그대로 공개된 출처에서 얻은 정보들을 의미한다. 해킹대회에서는 구글이나 네이버 검색처럼 누구나 쉽게 접근해서 얻을수 있는 정보들을 이용해서 의미있는 새로은 정보를 만들어내거나 알아내는 방식으로 진행된다. 문제 설명을 읽어보면 secure-startup.com 의 소비자들이 피싱 메일을 받고 있다고 한다. 그 이유를 알아내 달라고 한다. 문제를 풀기위해 주어지는 파일은 따로 없고, 해당 문구가 주어지는 전부이다. 일단은 문제에 피싱 메일이라는 힌트가 있었기에 메일 보안과 관련된 SPF, DMARC, DKIM 과 관련이 있을거라 생각하고 접근했다. 먼저 SPF는 Sender Poli..

[Affinity CTF] sooodefault - 웹해킹 / Python

아주 간단한 웹해킹 문제 풀이 자체는 간단한데 시작점을 찾는게 조금 어려울 수 있는 문제였다. 엄밀히 말하면 해킹이라고 보기도 어려운 문제다. 문제 파일은 따로 제공되지 않고 문제페이지 주소만 제공된다. 해당 페이지에 접속해보면 Apache2 Ubuntu Default Page 인 It works! 페이지가 나온다. 이건 사용자가 만든게 아니라 Ubuntu 리눅스에 Apache 를 설치하면 기본으로 있는 페이지이다. 아무리 찾아봐도 이 페이지 외에 다른 페이지를 찾을 수 없었고, 이 페이지에서 뭔가를 찾아서 해결해야 하는듯 했다. wget 명령어를 이용해 해당 페이지의 html 코드를 다운로드 받아봤다. wget 형태로 리눅스 터미널에 입력하면 된다. index.html 의 내용을 천천히 보다보니 특이한..

CTF/웹해킹 2022.12.27

[CTFlearn] GandalfTheWise - 포렌식 / HxD / Base64 / XOR

CTFlearn 의 마흔아홉번째 문제 이번에도 익순한 포렌식 카테고리의 jpg 파일 문제이다. 그래도 이번 문제는 조금 생각이 필요하다. https://hackingstudypad.tistory.com/266 https://hackingstudypad.tistory.com/288 https://hackingstudypad.tistory.com/305 https://hackingstudypad.tistory.com/311 https://hackingstudypad.tistory.com/338 조금씩 다르긴 하지만 이전에 비슷한 문제를 많이 풀이했었다. 이번 문제에서 주어지는 Gandalf.jpg 파일이다. 간달프 할아버지와 함께 멋진 문구가 적혀있다. 주어진 Gandalf.jpg 파일을 HxD 라는 도구를..

워게임/CTFlearn 2022.12.26

[Layer7 CTF] zipzipzipzipzip - MISC / Shell script

zip 파일과 관련된 MISC 카테고리의 문제 MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 문제 제목이 문제를 가장 잘 설명하고 있다. CTF에서도 종종 보이는 유형이다. 문제에서 layer1000.zip 파일이 제공된다. 해당 파일의 압축을 풀면 layer999.zip 파일이 나오고 또 압축을 풀면 layer998.zip 파일이 나온다. 숫자가 줄어드는걸 보니.. layer1.zip 또는 layer0.zip 까지 가야 플래그를 찾을 수 있는듯 하다. 사실 이번 문제는 zip 파일에 별로도 암호 같은게 걸려있지 않기 때문에 Linux 에서 Shell script 를 사용하면 아주 쉽고 빠르게 풀 수 있다. while true; do unzip $(ls *.zi..

CTF/MISC 2022.12.25

[CTFlearn] What could this be? - MISC / 자바스크립트

CTFlearn의 마흔여덟번째 문제 이번 문제는 MISC 카테고리의 문제이다. MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 뭔가 MISC 치고는 점수가 높은데다 Medium 난이도의 문제라 살짝 쫄았다. 문제에서 제공되는 주소로 접속하면 what_can_this_be.txt 파일을 다운로드 받을 수 있다. 해당 파일을 열어보면 이런 내용이 들어있다.. 괄호와 대괄호, 더하기와 느낌표로 이루어진 엄청나게 긴 내용이다. 사람이 인지할 수 있는 알파벳이나 숫자는 전혀 없이 이렇게만 나와있다. 이걸 어떻게 풀어야 하나 고민하다가 예전에 어떤 CTF에서 Javascript 를 이런식으로 난독화 하는걸 본 적이 있는것 같아 일단 시도해보기로 했다. 크롬에서 새 탭을 연 ..

워게임/CTFlearn 2022.12.24

[Root Me] XSS DOM Based - Introduction - 웹해킹 / 크로스사이트스크립트

Root Me에서 제공하는 크로스 사이트 스크립트 문제 이전에 포스팅 했던 문제들과 비슷한 맥락이다. (https://hackingstudypad.tistory.com/48) (https://hackingstudypad.tistory.com/297) (https://hackingstudypad.tistory.com/334) 지난 문제들 풀이를 보면 조금 이해하기 쉽다. 문제설명을 읽어보면 이번 문제의 목표 역시 admin 의 session cookie 값을 훔치는 것이다. 문제페이지에 접속하면 보이는 화면이다. Main 과 Contact 버튼이 있고, 아래는 숫자를 입력할 수 있는 칸이 있다. Choose a number between 0 and 100 이라고 적혀있는데 77이라고 테스트삼아 입력해보고 ..

워게임/Root Me 2022.12.23

[CTFlearn] RSA Beginner - 암호학 / Python

CTFlearn의 마흔 일곱번째 문제 이번엔 RSA 알고리즘과 관련된 암호학 문제이다. Beginner 라 그런지 이전에 포스팅 했던 문제들이랑 비슷하게 쉽게 풀 수 있다. (https://hackingstudypad.tistory.com/337) RSA는 지금까지도 아주 많이 사용하는 공개키 알고리즘의 이름이다. 개발자인 Rivest, Shamir, Adleman 세명의 이름 앞글자를 따서 RSA 라고 이름을 붙혔다. 엄청나게 큰 숫자일수록 소인수분해가 어렵다는것에 착안해서 설계되었다. RSA의 원리는 아래와 같다. 1. 두 소수 p, q를 준비한다. 2. p-1, q-1과 각각 서로소(1외에는 공약수가 없는 수)인 정수 e를 준비한다. 3. ed를 (p-1)(q-1)으로 나눈 나머지가 1의 되도록 하..

워게임/CTFlearn 2022.12.22

[Cyber Security Rumble] Hashfun - 암호학 / XOR / Python

Hash 인듯 Hash 아닌 문제 조금 헷갈렸는데 어렵지 않게 풀 수 있었다. 문제를 보면 FLAG 를 되돌릴 수 있는 방법은 없을거 같다면서 파일을 하나 제공한다. from secret import FLAG def hashfun(msg): digest = [] for i in range(len(msg) - 4): digest.append(ord(msg[i]) ^ ord(msg[i + 4])) return digest print(hashfun(FLAG)) # [10, 30, 31, 62, 27, 9, 4, 0, 1, 1, 4, 4, 7, 13, 8, 12, 21, 28, 12, 6, 60] 주어진 파일의 내용은 파이썬 코드이다. secret 에서 FLAG 라는 값을 가져와서 hashfun(FLAG) 의 ..

CTF/암호학 2022.12.21
반응형