반응형

CTF 604

[Root Me] PHP - Command injection - 웹해킹 / 명령어삽입

10점짜리 웹해킹 문제이다. 문제 제목으로 유추해 보건데, PHP로 만들어진 웹페이지인것 같다. 문제 설명을 읽어보면 이 서비스의 취약점을 찾아서 exploit을 하라고 한다. 플래그는 index.php 파일안에서 찾을 수 있다고 적혀있다. 문제페이지에 들어가면 입력창이 하나있고, 제출 버튼이 나온다. 입력창에는 기본으로 127.0.0.1이 들어가 있다. 일단 제출버튼을 눌러본다. 127.0.0.1을 입력하고 제출을 누르면 ping 명령어 수행결과가 출력된다. 웹 페이지를 통해서 운영체제 명령어를 실행하고, 그 결과를 가져와서 보여주는 서비스인듯 하다. 참고로 실제 리눅스 환경에서 ping 명령어를 실행시키면 이렇게 뜬다. 출력 내용을 보면 완전 똑같은것을 볼 수 있다. 문제는 이렇게 웹서비스를 통해서 ..

워게임/Root Me 2022.04.05

[AUCTF] Animal Crossing - 포렌식 / Wireshark / Tshark

네트워크 패킷 포렌식 문제이다. animalcrossing.pcapng 라는 이름의 패킷파일이 주어진다. 참고로 animalcrossing 은 동물의 숲의 영문판 이름이다. 이 대회당시에 동물의 숲이 엄청나게 유행이었는데, 문제랑은 무슨 관련이 있는진 잘 모르겠다. Wireshark를 이용해서 해당 패킷 파일을 열어보면 26번째 패킷부터 수상한 데이터가 보인다. ad.quickbrownfoxes.org 라는 곳과 dns 패킷을 엄청나게 주고받았는데 앞쪽에 RGlkIHlvd ~~ 로 시작하는 이상한 데이터도 같이 보인다. 생긴것으로 보아 base64로 인코딩 되어있는듯 하다. 이제 이 패킷에서 데이터를 뽑아내보자. 데이터를 뽑아낼때는 Wireshark 보다 Wireshark의 콘솔 버전인 Tshark를 이..

CTF/포렌식 2022.04.05

[Root Me] HTTP - IP restriction bypass - 웹해킹 / 헤더변조

10점짜리 웹해킹 문제이다. network admin이 회사 내에 메일을 뿌린거 같다. 사내 인트라넷을 쓰기 위해서 사설 ip 대역으로 접근제한을 걸어놨다는 내용이다. 참고로 사설 IP 대역은 10.0.0.0 ~ 10.255.255.255 172.16.0.0 ~ 172.31.255.255 192.168.0.0 ~ 192.168.255.255 세 가지 대역이 있다. 문제페이지에 들어가면 로그인 창이 하나 나오게 된다. 맨 위에 내 아이피가 찍히게 되는데, 내 아이피는 12~~ 로 시작하기 때문에 사설 IP 대역이 아니다. 그래서 IP주소가 LAN 구간에 속하지 않는다고 튕기게 된다. 여기에 정상적으로 접근하려면 내 IP가 사설IP 대역인것처럼 웹 서버를 속여야 한다. https://developer.moz..

워게임/Root Me 2022.04.03

[Root Me] HTTP - User-agent - 웹해킹 / 헤더변조

10점짜리 웹해킹 문제이다. 문제 제목이 User-agent 인걸로 보아 User-agent 헤더를 이용해서 풀면 되는듯 하다. User-agent 헤더는 웹 요청 패킷에 있는 헤더이다. https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent MDN에 있는 설명을 인용해서 보면, 클라이언트의 어플리케이션, 운영체제, 벤더 및 버전 등을 식별해주는 역할을 한다고 한다. 실제로 위에 캡쳐된 패킷을 보면 Mozilla/5.0 (Windows NT 10.0) 이런식으로 브라우저나 운영체제 정보가 포함되어 있는것을 볼 수 있다. 문제페이지에 들어가보면 "admin" 브라우저가 아니라는 안내문구가 뜬다. 이런건 간단하게 User-agent 헤더를 ..

워게임/Root Me 2022.04.03

[AUCTF] Cracker Barrel - 리버싱 / IDA

간단한 리버싱 문제이다. crack_barrel 이라는 바이너리 파일이 하나 주어진다. 미국에 있는 음식점 체인 이름이라고 하던데 문제와 무슨 연관이 있는지 잘 모르겠다. 해당 바이너리 파일은 리눅스에서 실행가능한 elf 파일이다. 리눅스의 exe 라고 생각하면 된다. 프로그램을 실행시켜 보면 Give me a key! 하면서 키값을 요구한다. abcd를 입력해봤는데 아니라고 하면서 프로그램이 종료된다. 디스어셈블러인 IDA 프로그램을 이용해서 해당 바이너리 파일을 열어봤다. 함수목록을 보면 main, check, check_1, check_2, check_3, print_flag 가 있는것을 볼 수 있다. 추측컨데 check 함수들을 모두 통과해야 print_flag 가 실행될 듯 하다. 가장먼저 ma..

CTF/리버싱 2022.04.02

[AUCTF] Zippy - 포렌식 / John the Ripper / Rock You

zippy.zip 이라는 이름의 압축파일이 하나 주어진다. 해당 파일을 열려고 하면 비밀번호를 물어본다. zip 파일을 crack 하는 문제는 이전에도 풀어본 적이 있다. https://hackingstudypad.tistory.com/55(한번 읽고오는걸 추천한다.) 하지만 이번 문제는 아주 살짝 다르다. 예전에 했던것처럼 zip2john zippy.zip > hash john hash zip2john 명령어를 이용해서 zippy.zip 파일의 비밀번호 hash 값을 추출하고, john the ripper 를 이용해서 hash 값을 crack 을 시도하면 잘 안된다. 잘 안되는 이유는 hash 값을 사전대입공격을 이용해서 crack 하는데 john the ripper에서 기본으로 사용하는 사전파일이 아..

CTF/포렌식 2022.04.02

[AUCTF] I'll Have The Salad - 암호학 / 카이사르암호

아주 쉬운 암호학 문제이다. vpxoa{eP5o_4_R4mH_pK_1_4421_9952} 라는 암호문이 주어져 있다. 그냥 봐서는 어떤 의미의 단어인지 전혀 모르겠다. 해킹대회 문제는 문제 제목이나 내용이 아주 엄청난 힌트가 되는 경우가 많다. 문제 제목을 잘 보자. I'll Have The Salad 이다. 여기서 주목할 부분은 샐러드인데 암호학과 샐러드가 연관있는 부분이 무엇이 있을까? 위에 있는 사진은 위키백과에 있는 '시저 셀러드' 사진이다. 시저 카디니라는 사람이 개발해서 시저 샐러드라고 부른다고 한다. 시저의 스펠링은 Caesar 인데 Caesar는 '카이사르' 라고도 읽힌다. 들어본 사람도 있겠지만, 카이사르는 로마의 황제 이름이다. 카이사르는 동맹군들과 소통해기 위해서 위 그림처럼 알파벳을..

CTF/암호학 2022.04.01

[Root Me] HTTP - Open redirect - 웹해킹 / MD5

10점짜리 웹해킹 문제이다. 문제 설명을 보면 Find a way to make a redirection to a domain other than those showed on the web page 라고 적혀있다. 웹페이지에 제동된 도메인 외에 다른곳으로 리다이렉션 시킬 방법을 찾아보라고 한다. 문제페이지에 접속하면 가운데 Social Networks 라고 적혀있고 페이스북, 트위터, 스택 3가지 버튼이 있다. 각 버튼을 클릭하면 실제 SNS 페이지로 이동이 된다. 어떻게 장난을 쳐볼지 고민하기전에 우선 F12를 눌러 개발자도구로 웹 소스를 확인해준다. 개발자도구의 소스 탭에서 웹 소스를 자세히 살펴보면 버튼이 있는 부분에 태그가 있는것을 볼 수 있다. a태그는 링크를 다른 웹피이지로 링크를 걸어주는 역..

워게임/Root Me 2022.03.31

[AUCTF] ALledAS About Some Thing - OSINT

처음으로 풀어봤던 OSINT 관련 문제이다. OSINT는 Open Source Intelligence 의 약자로 공개출처정보라는 뜻이다. 말 그대로 공개된 출처에서 얻은 정보들을 의미한다. 해킹대회에서는 구글이나 네이버 검색처럼 누구나 쉽게 접근해서 얻을수 있는 정보들을 이용해서 의미있는 새로은 정보를 만들어내거나 알아내는 방식으로 진행된다. OSINT 문제는 문제 설명도 불친절하다. 맨위에 캡쳐본을 보면 알겠지만 'See what you can find' 라는 말만 달랑 있고 밑에는 AUCTFShh 라는 단어 하나만 달랑 주어진다. 저 주어진 단어로 뭔가 의미있는 정보를 찾아보라는 것이다. OSINT 문제를 풀때 OSINT Framework 라는것을 많이 이용힌다. https://osintframewo..

CTF/MISC 2022.03.31

[RiftCTF] Reversing 0x0002 - 리버싱 / IDA

아주조금 복잡한 리버싱 문제 대회가 끝나고 풀어서 캡쳐가 원활하지 않다. chall2.elf 파일이 주어진다. elf파일은 Executable and Linkable 의 약자로 보통 리눅스에서 실행되는 파일이다. 리눅스의 exe 파일이라고 생각하면 된다. 이런식으로 실행이 가능하다. ./chall.elf 라고 입력하면 실행이 된다. 프로그램을 실행하면 passwd > 라는 창이 나오면서 비밀번호를 입력하라고 한다. 이 문제의 의도는 이 비밀번호를 알아내는 것이다. IDA 라는 디스어셈블러를 이용해 해당 파일을 열어본다. main 함수를 보면 비밀번호가 맞으면 "Correct Password..." 틀리면 "Wrong Password..." 을 프린트한다는것을 알 수 있다. 해당 그래프가 있는 화면에서 F..

CTF/리버싱 2022.03.30
반응형