반응형

해킹대회 617

[boot2root] Vulnerable Adventure 2 - MISC / Python

이전 문제(https://hackingstudypad.tistory.com/413) 와 연계되는 문제이다. 똑같이 전에 제공되었던 client.py 파일을 이용해서 풀 수 있다. import struct import socket import random s = socket.socket() port = 1013 s.connect(('35.238.225.156',port)) coins = 100 health = 100 mana = 100 posx = 0 posy = 0 goblin = 0 terminated = 0 dummyflag = 0 vuln = random.randint(1,500) while(1 == 1): print "Welcome to game" print "What would you like ..

CTF/MISC 2023.02.11

[CTFlearn] Reykjavik - 리버싱 / IDA

CTFlearn 의 예순 여섯번째 문제 이번엔 쉬운 난이도의 리버싱 문제이다. 문제 설명을 보면 gdb 를 이용해보라고 하는데 더 쉬운 IDA 를 이용해 풀것이다. 문제 제목인 Reykjavik 는 아이슬란드의 수도라고 한다. 문제 출제자가 아이슬란드 사람인가 보다. 문제에서 주어지는 것은 Reykjavik 바이너리 파일이다. 한번 실행시켜 봤는데 인자로 플래그를 입력받는듯 했다. 바로 IDA 라는 디스어셈블러를 이용해 바이너리를 열어보았다. main 함수의 수도 코드를 살펴보니 v3 변수에 사용자가 입력한 인수를 저장하고 아래쪽에 strcmp 함수로 v3 와 CTFlearn{Is_This_A_False_Flag?} 가 같은지 비교하고 있다. 같으면 아래쪽 printf 가 실행되는데 이건 가짜 플래그라고..

워게임/CTFlearn 2023.02.09

[boot2root] Vulnerable Adventure - MISC / Python

이번 문제는 뭐라 분류해야 할지 몰라서 MISC 로 넣었다. MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 문제 설명을 읽어보면 client 를 실행시켜 플래그를 얻으라고 한다. 문제에서 주어지는 파일은 client.py 파일이다. import struct import socket import random s = socket.socket() port = 1013 s.connect(('35.238.225.156',port)) coins = 100 health = 100 mana = 100 posx = 0 posy = 0 goblin = 0 terminated = 0 dummyflag = 0 vuln = random.randint(1,500) print(vuln) ..

CTF/MISC 2023.02.08

[CTFlearn] ALEXCTF CR2: Many time secrets - 암호학 / XOR

CTFlearn 의 예순 다섯번째 문제 이번엔 Medium 난이도의 암호학 문제이다. 간만에 조금 생각해볼만한 문제가 나왔다. ALEXCTF 라는 대회에서 나왔던 기출문제를 그대로 가져왔나 보다. 문제 설명을 읽어보면 Fady 라는 사람이 one time pad 를 구현했는데 one time pad 에 대해서 정확하게 이해하지 못한 상태에서 만들었다고 한다. 플래그는 ALEXCTF{ 로 시작한다는 힌트도 같이 주어져 있다. 0529242a631234122d2b36697f13272c207f2021283a6b0c7908 2f28202a302029142c653f3c7f2a2636273e3f2d653e25217908 322921780c3a235b3c2c3f207f372e21733a3a2b37263b313012 ..

워게임/CTFlearn 2023.02.06

[pbctf] Not-stego - MISC

간단한 난이도의 MISC 카테고리 문제 MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 문제 제목처럼 스테가노그래피 문제인듯 하지만 스테가노그래피는 아닌 그런 문제이다. 문제파일로 profile.png 파일이 주어진다. profile.png 파일의 내용은 위와 같다. 뭔가 어셈블리 언어처럼 생긴 내용들이 가득 써있다. 그런데 자세히 보면 어셈블리어 치고는 뭔가 이상하다. 이건 어떻게 보면 감인데 내용을 봤을때 나열되어 있는 명령어들이 뭔가 체계적이지 않다는 느낌이 든다. jo, jae, bound, arpl 이런 것들이 뭔가 의미가 있어서 수행되는 것이 아니라 그냥 무작위로 배치되어 있는 느낌이다. 두번째로 왼쪽에 써있는 16진수들을 보고도 이상함을 느낄 수 있다..

CTF/MISC 2023.02.05

[CTFlearn] Help Bity - MISC / XOR

CTFlearn의 예순 네번째 문제 이번에는 MISC 카테고리의 Medium 난이도 문제이다. 난이도 자체는 Easy 인데 다른 의미로 어렵다.. MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 문제 설명을 읽어보면 Bity 가 가지고 있던 플래그를 Noty 가 망가트려버렸다고 한다. 이것을 복원하는걸 도와야 하는데, 기억나는 부분은 플래그의 맨 앞 4자리가 CTFL 로 시작한다는 것이라고 한다. BUGMdsozc0osx^0r^`vdr1ld| 위의 문자열이 문제에서 주어진 망가진 플래그이다. 문제는 허무할 정도로 쉽게 풀린다. CyberChef(https://gchq.github.io/CyberChef) 에서 XOR Brute Force 를 해보면 플래그가 바로 ..

워게임/CTFlearn 2023.02.03

[JISCTF] SOUND!!! - 포렌식 / DeepSound / John the Ripper

간단한 포렌식 문제 비슷한 유형의 문제를 이전에 포스팅 한 적이 있다. (https://hackingstudypad.tistory.com/184) 문제파일로 주어지는 것은 song_file.wav 파일이다. 음악파일이 주어졌을때 주로 사용하는 도구는 audacity 가 있겠지만 이번 문제에서는 다른 도구를 사용해서 풀 수 있었다. DeepSound 라는 도구를 사용했다. DeepSound 도구는 wav, flac, wma, ape 등등 음악파일에 AES-256 암호 알고리즘을 사용해서 Secret file을 숨길 수 있게 해주는 도구이다. 물론 역으로 복원하는것도 가능하다. 프로그램을 실행시킨 뒤에 wav 파일을 드래그 앤 드롭하면 아래쪽에 FLAG.rar 파일이 숨겨져 있다는 것을 알 수 있다. rar..

CTF/포렌식 2023.02.02

[CTFlearn] Exclusive Santa - 포렌식 / HxD / PIL

CTFlearn의 예순 세번째 문제 PNG 파일을 이용한 포렌식 문제인데 난이도가 올라갈수록 PIL 라이브러리를 사용하는 문제 유형이 많이 나오는것 같다. 문제에서 주어지는 것은 Exclusive_Santa.rar 압축파일이다. 압축을 풀면 이렇게 1.png, 3.png 파일 두개가 들어있다. 2.png 가 없는것을 보니 어딘가에 숨겨져 있는것 같다. 1.png 파일은 이렇게 생겼다. WINTER IS COMING 이라는 글자가 보이고 사진이 뭔가 깨진것 처럼 엄청 복잡한 느낌이다. 3.png 는 이렇게 생겼는데 이건 구글에 XOR 이라고 검색하면 바로 나오는 사진이다. XOR 을 두 개의 집합을 사용해 가시적으로 표현한 다이어그램이다. 1.png 가 정상적인 사진과 달리 복잡하게 생긴이유가 어떤 사진이..

워게임/CTFlearn 2023.02.01

[JISCTF] Oh my rain!!! - MISC / John the Ripper / Base32

문제 자체는 어렵지 않은데 악랄했던 MISC 문제.. MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 문제에서 주어지는 파일은 OH-MY-R41N.zip 파일이다. ZIP 파일의 압축을 풀려고 보니 비밀번호가 걸려있다. ZIP 파일 비밀번호를 crack 하는데는 John the Ripper 라는 도구를 이용했다. 여러가지 비밀번호를 crack 해주는 기능을 가지고 있다. zip2john > hash 명령어로 hash 파일을 생성해준 다음 john --wordlist= hash 명령어로 비밀번호를 crack 해주면 된다. 해당 파일의 비밀번호는 management 이었다. 비밀번호를 크랙하는데 사용한 rockyou.txt 파일을 구글에 검색하면 쉽게 구할 수 있다...

CTF/MISC 2023.01.30

[HackTheBox] BabyEncryption - 암호학 / Python

HackTheBox 에서 제공하는 암호학 문제 난이도는 그렇게 어렵지 않긴 한데.. 그렇다고 마냥 쉽지많은 않다. HackTheBox 는 난이도 역치가 높은것 같다. 문제에서 제공되는 것은 chall.py 와 msg.enc 파일이다. 먼저 chall.py 의 내용을 보면 암호화 하는 알고리즘을 보여준다. encryption 함수에서 msg 를 인수로 받아 각 글자 * 123 + 18 한 값을 256 으로 나눈 나머지를 ct 배열에 저장하고 있다. 모든 값을 암호화하면 msg.enc 파일을 생성해 거기에 저장하고 끝이 난다. 6e0a9372ec49a3f6930ed8723f9df6f6720ed8d89dc4937222ec7214d89d1e0e352ce0aa6ec82bf622227bb70e7fb7352249b7..

반응형