반응형

CTF 604

[CTFlearn] Weird Android Calculator - 프로그래밍 / JADX / Python

CTFlearn의 여든두번째 문제 이번엔 프로그래밍과 관련한 문제이다. 문제 설명을 읽어보면 이상한 안드로이드 계산기라고 하는데 이상한점을 찾아내라고 한다. 문제를 풀때 안드로이드 기기는 필요없다고 한다. 문제에서 주어지는 것은 WeirdCalculator.apk 파일이다. apk 파일이 주어지는 jadx 라는 도구를 사용하면 유용하다. (https://github.com/skylot/jadx) 자바 디컴파일러로 apk 파일을 넣으면 디컴파일해서 java 소스코드를 볼 수 있게 해준다. jadx 를 실행시킨 후 문제 파일을 열면 이런 화면이 나온다. 왼쪽 메뉴에서 가장먼저 MainActivity 부분을 확인해봤다. 특별한게 없는거 같아서 아래쪽에 Parser 를 눌러보니 AnonymousClass1Int..

워게임/CTFlearn 2023.03.30

[Tenable CTF] Numerological - 포렌식 / HxD

포렌식에 암호학이 살짝 섞인 문제 문제 설명에 monk 라는 단어가 나오는데 이게 문제풀때 큰 힌트가 된다. 문제에서 주어지는 것은 shield.png 파일이다. 열어보면 이렇게 생겼다. HxD로 해당파일을 열어서 스크롤을 내려봤다. PNG 파일은 끝날때 49 45 4E 44 AE 42 60 82 로 끝난다. IEND®B`‚ 이렇게 생긴 문자열이 나오면 PNG 파일은 끝난것이다. 그런데 이상한게 위의 문자열이 나왔음에도 89 50 4E 47 라는 문자열이 새로 나오는 것을 볼 수 있다. 89 50 4E 47로 시작하는것은 PNG 파일의 특징이다. 이런걸 파일 시그니처 라고 한다. 그러니까 이 파일은 PNG 파일 뒤에 또다른 PNG 파일이 있는 것이다. 뒤에 있는 PNG 파일을 복사해서 새로만들기 하면 이..

CTF/포렌식 2023.03.29

[CTFlearn] CoppeRSA Lattice - 암호학 / RsaCtfTool

CTFlearn 의 여든한번째 문제 이번엔 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의 되도록 하는 d를 구한다.(d는 개인키로 공개하지 않는다) 4. n=pq를 계산한 후 n과 e를 공개한다.(이 둘이 ..

워게임/CTFlearn 2023.03.28

[Tenable CTF] Secret Images - 포렌식 / PIL

생각보다 자주 보이는 유형의 스테가노그래피 문제 오래전에 블로그에서도 유사한 문제를 다룬적이 있다. (https://hackingstudypad.tistory.com/125) 두개의 사진에서 숨겨진 데이터를 찾는것이 문제의 목표이다. 문제에서는 crypted1.png, crypted2.png 파일 두개가 주어진다. 각 이미지는 이렇게 생겼다. 노이즈처럼 지지직 하게 생긴 이미지가 두개 주어진다. 이번 문제는 Python PIL 라이브러리를 이용해서 풀었다. PIL은 Python Imaging Library의 약자로 파이썬으로 이미지 처리를 할 수 있도록 해주는 라이브러리이다. pip install image pip install pillow 두 명령어를 이용해서 다운로드 받아주면 된다. from PIL ..

CTF/포렌식 2023.03.27

[CTFlearn] Adoni Assembler Chall - 프로그래밍

CTFlearn의 여든번째 문제 사실 이 문제 전에 AudioEdit 라는 엄청 어려운 웹해킹 문제가 있는데 내가 못푸는건지 문제 서버가 이상한건지 계속 에러가 나서.. 일단 스킵했다. 이번 문제는 프로그래밍 카테고리에 있지만 사실 문제푸는데 프로그래밍은 필요없다. 난이도와 점수가 그걸 증명한다. 문제 설명을 읽어보면 대충 주어지는 adoni.asm 파일에서 플래그를 찾으라고 한다. 문제에서는 adoni.asm 과 readme 파일이 주어진다. readme 파일은 문제에 대한 친절한 설명과 함께 어셈블리 프로그래밍에 대해 공부할 수 있는 유튜브 링크까지 주어진다. 사실 이번문제는 복잡하게 생각안해도 풀 수 있다. adoni.asm 파일을 열어보면 이렇게 생겼다. 어셈블리 코드를 몰라도 된다. 가장 처음에..

워게임/CTFlearn 2023.03.26

[Tenable CTF] Hackerman - 포렌식 / 개발자도구

또다시 간단한 포렌식 문제 Tenable CTF 에서는 이런 간단간단한 문제들이 많이 나온다. 문제에서 주어지는 파일은 silly_hacker.svg 파일이다. svg 파일은 Scalable Vector Graphics 의 약자로 웹 친화적인 벡터 파일을 말한다. 쉽게말하면 웹 브라우저로 열어볼 수 있는 사진파일이다. 실제로 해당 파일을 더블클릭해서 열어보면 Edge 가 실행되고 어나니머스 해커의 사진이 나타난다. 웹 브라우저를 이용해서 열린 파일이니 개발자도구를 이용하면 추가적인 정보를 확인할 수 있다. F12를 눌러 개발자도구를 열고 소스탭을 확인해봤다. 소스의 맨 아래쪽으로 내려보니 숨겨져 있던 플래그를 찾을 수 있었다.

CTF/포렌식 2023.03.25

[Tenable CTF] Easy Stego - 포렌식 / Stegsolve

문제 제목 그대로 아주 쉬운 스테가노그래피 문제 문제에서 주어지는 파일은 blm1.png 파일이다. blm1.png 파일을 열어보면 이렇게 생겼다. 뭔가 흐릿하게 그림이 보일들 말듯 하고 아래쪽에 보면 뭔가 플래그처럼 보이는 글씨도 써있다. 이 문제는 Stegsolve 라는 도구를 사용하면 풀 수 있다. 블로그에서는 관련된 문제들을 많이 다뤘었다. (https://hackingstudypad.tistory.com/177) (https://hackingstudypad.tistory.com/269) (https://hackingstudypad.tistory.com/339) (https://hackingstudypad.tistory.com/348) (https://hackingstudypad.tistory.c..

CTF/포렌식 2023.03.24

[HackTheBox] USB Ripper - 포렌식 / Python

EASY 난이도의 포렌식 문제 sysadmin 으로서 누군가가 USB 를 이용해 중요 정보를 가지고 나간걸 찾아내라고 한다. 문제힌트도 함께 주어진다. once you find it, "crack" it 잘 기억해 둔다. 문제 파일로는 두개의 파일이 주어진다. 첫번째 파일은 syslog 파일이다. 일부만 가져왔는데 파일 크기가 무려 90만줄이다.. USB를 연결할 때마다 해당 USB의 Product, Manufacturer, SerialNumber 를 로그로 남기는듯 하다. 두번째로 주어지는 파일은 auth.json 파일이다. 이 파일에는 json 형태로 인가된 USB의 Product, Manufacturer, SerialNumber 값을 저장하고 있다. syslog 에서 식별된 값이 auth.json ..

[Tenable CTF] The only tool you'll ever need - 리버싱 / Strings

아주아주 쉬운 리버싱 문제 사실 너무 쉬워서 리버싱이라 부르기도 좀 그렇다. 문제 풀이수가 얼마나 쉬웠는지 증명해주고 있다. 문제에서 주어지는 것은 a.out 파일이다. 문제 설명을 보면 리버싱 문제를 풀기위한 가장 파워풀한 도구가 뭔지 아냐고 물어보는데 여러 후보들이 있지만 이 문제의 경우 메모장도 그중 하나일것 같다. 메모장으로 a.out 파일을 열어서 스크롤을 조금만 내려보면 플래그가 보인다.. 플래그의 내용에 strings 가 있는걸로 보아 문제 출제자의 의도는 strings 도구를 사용하라는 것인듯 하다. 리눅스 환경에서 strings 명령어를 이용해 a.out 파일을 확인해보면 똑같이 플래그를 찾을 수 있다.

CTF/리버싱 2023.03.22

[HackTheBox] MarketDump - 포렌식 / Wireshark

MEDIUM 난이도의 포렌식 문제 문제 설명을 읽어보면 해커가 내부 네트워크에 접근해서 고객 DB를 털어갔따고 한다. 고객 중 하나가 범인이라는데 누군지 잡아달라고 한다. 문제에서는 패킷파일이 주어진다. 주어진 패킷 파일은 Wireshark 라는 도구로 열어볼 수 있다. 주어진 패킷파일을 와이어샤크로 열어보면 10.0.2.15 에서 10.0.2.3 주소로 계속 패킷을 보내는 것을 볼 수 있다. 10.0.2.15 가 해커의 주소이고 뭔가 열린 포트를 찾기위해 스캔하는것 처럼 보인다. 계속 내리다가 2,550 번째 패킷 쯤 가면 TELNET 프로토콜을 이용해 뭔가 데이터를 주고받은 흔적이 보인다. 해당 패킷에서 우클릭 - Follow - TCP Stream 버튼을 눌러서 확인해본다. 서버에서 admin / ..

반응형