반응형

분류 전체보기 712

[n00bzCTF] Crack & Crack - 포렌식 / John the Ripper

파일 비밀번호 crack 과 관련한 포렌식 문제 이미 유사한 문제들을 블로그에서 많이 다뤘었다. (https://hackingstudypad.tistory.com/437) 주어지는 파일은 flag.zip 파일이다. 압축을 풀려고 보면 비밀번호가 걸려있다. 이런 문제는 John the Ripper 도구를 사용하면 된다. John the Ripper 여러가지 비밀번호를 crack 해주는 기능을 가지고 있다. zip2john > hash 명령어로 hash 파일을 생성해준 다음 john --wordlist= hash 명령어로 비밀번호를 crack 해주면 된다. 잠시 기다리면 금방 결과가 나온다. 압축을 풀어보니 flag.pdf 파일이 나온다. pdf 파일을 열러고 보니 또 암호가 걸려있었다. 이래서 문제제목이 ..

CTF/포렌식 2023.06.30

[TOPCIT Level4] 시험정보 / 후기 / 공부방법

2023년 6월 결과가 나온 TOPCIT 시험 작년 6월 처음으로 TOPCIT 시험을 응시하고 나서 이번에 다시한반 도전해봤다. (작년 TOPCIT : https://hackingstudypad.tistory.com/181) TOPCIT은 Test Of Practical Competency in IT 의 약자로 과학기술정보통신부에서 주관하고, 정보통신기획평가원에서 시행하는 시험이다. 다른말로 소프트웨어 역량 검정 이라고도 하며 ICT 분야에 진입을 희망하는 사람들을 대상으로 대학이나 산업계에서 공통적으로 요구하는 역량을 객관적으로 측정하기 위해 개발된 시험이라고 한다. IT계의 토익이라고 생각하면 될것같다. (토익만큼 많이 치지는 않는것 같지만..) 하지만 만만하게 볼 시험이 아닌게 TOPCIT의 시험범..

[n00bzCTF] QRazy CSV - 포렌식 / PIL / QR코드

문제 제목에서 QR 코드라고 힌트를 주고 있는 포렌식 문제이다. 문제에서 주어지는 것은 secret.csv 파일이다. 해당 파일을 열어보면 row, col 이라고 적혀있고 그 아래 숫자들이 써있다. row, col 이라는걸 보니 x,y 좌표라고 생각하면 될것 같고, 숫자는 x, y 모두 0부터 28까지 적혀있었다. 위에도 보면 0 ~ 28 범위 내에서 써있는 숫자도 있고, 안써있는 숫자도 있는데 써있는 숫자는 1, 안써있는 숫자는 0 으로 분류해서 해당 좌표에 색을 칠할지 말지 판단하면 되는듯 했다. 이번 문제는 Python PIL 라이브러리를 이용해서 풀었다. PIL은 Python Imaging Library의 약자로 파이썬으로 이미지 처리를 할 수 있도록 해주는 라이브러리이다. pip install ..

CTF/포렌식 2023.06.28

[n00bzCTF] Pwn1 - 포너블 / 버퍼오버플로우 / IDA / Pwndbg / Pwntool

쉬운 난이도의 포너블 문제 간단한 버퍼 오버플로우 문제이다. pwn1 바이너리 파일과 원격 접속 주소가 주어진다. 한번 nc 를 이용해 원격으로 접속해 봤다. Would you like a flag? 라는 문장이 출력되고 사용자 입력을 받는다. 아무렇게나 입력해보니 fake flag 가 출력되었다. IDA 라는 디스어셈블러를 이용해 main 함수를 살펴보았다. 여기서 확인할 수 있는 문제는 배열 s 의 크기가 64 인데 fgets 함수로 80 만큼 입력을 받고 있는 것이다. 선언한 길이보다 더 많은 입력을 받아 버퍼오버플로우 취약점이 발생한다. 버퍼오버플로우를 통해 ret 주소를 변경시켜야 한다. 변경시킬 대상 주소는 코드 어디에서도 호출하지 않고 있는 win() 함수이다. win 함수는 system("..

CTF/포너블 2023.06.27

[n00bzCTF] Secret Group - 웹해킹 / 헤더변조

쉬운 난이도의 문제였지만 상당히 귀찮게 했던 웹해킹 문제 문제페이지에 들어가면 이런 문구가 나온다. agent 가 n00bz-4dm1n secure browser 가 아니라고 하는데 이건 웹 요청 패킷을 보낼때 헤더에 있는 User-Agent 의 값을 보고 판별한다. 요청 패킷을 수정해서 보내야 한다. https://chrome.google.com/webstore/search/modheader?hl=ko 요청 패킷의 해더를 변조할 때는 ModHeader 라는 확장 프로그램을 쓰면 편하다. Chrome 확장 프로그램 설치페이지로 가서 modheader 라고 검색하면 설치할 수 있다. ModHeader를 실행시켜서 이렇게 User-Agent 를 n00bz-4dm1n 으로 변경시켜 활성화해주면 웹페이지가 이렇..

CTF/웹해킹 2023.06.26

[n00bzCTF] Google Form 2 - MISC / ChatGPT

지난 Google Form 1 문제에 이어서 구글 폼과 관련된 두번째 문제 (https://hackingstudypad.tistory.com/546) MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 지난번 처럼 구글 폼 링크가 주어진다. 주어진 링크로 들어가면 이렇게 Google Form Flag Chekcer 2 라는 제목의 폼이 뜬다. 필수입력 사항으로 Do you want flag? 항목이 있는ㄷ 올바른 Flag 값을 입력해야만 한다. 지난 1번 문제처럼 웹 소스에서 뭔가 있지 않을까 싶어서 웹 소스에서 같은 부분을 확인해봤다. 눈에 띄는 부분이 100000000 과 Input too long! 이라는 메세지였는데 입력값의 길이를 체크하는 부분인것 같았으나 ..

CTF/MISC 2023.06.25

[n00bzCTF] Google Form 1 - MISC

Google Form 과 관련한 MISC 문제 MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 주어진 링크로 들어가면 이렇게 Google Form Flag Chekcer 1 라는 제목의 폼이 뜬다. 필수 입력 사항으로 Flag 항목이 있는데, 올바른 Flag 값을 입력해야만 한다. 아무거나 입력해봤더니 Incorretc flag! 라면서 에러가 발생한다. 보통 CTF 에서 나오는 Google Form 관련된 문제는 웹 페이지 소스에 플래그 값이 숨겨져 있는 경우가 많아 F12 를 눌러 개발자도구를 이용해 살펴보기로 했다. 개발자 도구에서 플래그 포맷인 n00b 를 찾기 했더니 바로 플래그를 찾을 수 있었다. 해당 값을 제출하면 정상적으로 페이지가 넘어가는 것을 확..

CTF/MISC 2023.06.24

[n00bzCTF] Flag Shop - 포너블

아주아주 간단한 포너블 생기초 문제 포너블 관련 지식이 없어도, 잔머리가 조금 있다면 풀 수 있다. 문제에선 바이너리나 소스코드가 주어지지 않고 원격 접속 가능한 주소만 주어진다. nc 를 이용해 이렇게 접속하면 flag shop 이라는 곳으로 연결된다. real flag 는 1337 달러, fake flag 는 50 달러에 팔고있는데 [3] Check account balance 를 선택해 잔고를 보면 수중에 100 달러밖에 없는것을 볼 수 있다. 일단 살 수 있는 fake flag 를 한번 사봤다. [2] Buy fake flag 를 선택하니 How many? 라며 구매 수량을 물어본다. 1 을 선택하니 n00bz{f4k3_flag} 라며 가짜 플래그가 출력되고 잔고를 확인해보니 50 달러가 줄어 5..

CTF/포너블 2023.06.23

[n00bzCTF] Conditions - 웹해킹

조금 어려웠던 웹해킹 문제 일반적인 해킹 기법에 대한 문제가 아니라서 적당한 페이로드를 찾는데 시간이 걸렸다. 문제에서는 server.py 파일과 문제 페이지 주소가 주어진다. 문제 페이지에 접속하면 이렇게 Username 을 입력할 수 있는 칸이 나온다. from flask import Flask, request, render_template, render_template_string, redirect import subprocess import urllib flag = open('flag.txt').read() app = Flask(__name__) @app.route('/') def main(): return redirect('/login') @app.route('/login',methods=['G..

CTF/웹해킹 2023.06.22

[n00bzCTF] Club_N00b - 웹해킹

초심자들을 위한 CTF 의 첫번째 웹해킹 문제 사실 이번문제는 좀 쉬워서 해킹이라 하기 좀 뭐하다. 문제페이지에 접속하면 나오는 화면이다. 가장 radical 한 해커만 입장할 수 있는 club n00b 이라고 한다. 나는 radical 하지 않기 때문에 입장이 거부되었다는 메세지가 뜬다. 아래쪽에 Check Status 버튼을 눌러봤는데 멤버 리스트에 없다는 메세지가 나온다. URL 을 보니 secret_phrase 파라미터에 nope 가 들어가 있는것이 보인다. nope 를 아까 강조되어있던 단어인 radical 로 변경해줬다. 그리고 다시 새로고침을 하면 웹페이지와 URL에 플래그가 적혀 나오는 것을 볼 수 있다.

CTF/웹해킹 2023.06.21
반응형