CTF
-
InsecureBankv2 분석 및 HookingHacking/Android 2020. 1. 8. 23:28
이전에 풀었던 UnCrackable 문제보다는 쉬운 것 같지만연습이나 분석으로 굉장히 잘 알려진 InsecureBankv2.apk를 분석과 Hooking 해보려고 한다. KISA 교육가서 알게된 어플인데이런게 많을지도 모르겠지만 여튼 나름 재미있게 공부한 것 같다. 클릭 : 우선 이전에 포스팅 했던 것처럼 디컴파일 등 필요한 사전 절차를 진행하자 필요한 절차가 모두 끝났다면 이번 포스팅에서는 Nox 에뮬레이터를 이용해서분석 및 Hooking을 진행해보도록 하겠다. 환경은 Mac OS이다. (환경은 알아서 본인에게 맞게!) * 참 고 *Nox를 Mac Book에서 사용할 때 종료되는 경우가 있다고 한다. 설치 후, VirtualBox Update를 권유하는 창이 뜨면 절대 하지말라고 한다.진행하면 자꾸 꺼..
-
Frida, adb 설정 & OWASP UnCrackable-Level1.apkHacking/Android 2019. 12. 29. 17:36
한동안 블로그에 글을 포스팅 하지 못했다.나름대로 많은 일들이 있었지만 사정상 올리진 못할 것 같다.뭔가 블로그에 공백기가 생기는 것 같아서 맘에 안들지만복습도 할 수 있었고 부족한 것들을 채워넣을 수 있던 경험이었다 이번에는 Android 공부를 진행해보려고 한다. 기본적인 셋팅부터 차근차근 진행해보도록 하자. 루팅폰이 필요했는데 이미 예전에 드론 해킹을 진행하기위해루팅을 진행해놓은 폰이 있었다. 나는 Nexus 5X를 이용했다.나쁘지 않다ㅎㅎ(중고로 구매하는 것도 추천!)* 루팅 폰이 없다면 Nox 같은 에뮬레이터를 사용하자! * 우선 분석할 Target을 선정해주자. 나는 공부와 연습을 위해OWASP의 UnCrackable-Leve1.apk를 이용하기로 했다. OWASP UnCrackable 문제 ..
-
[HackCTF]Unexploitable #3 Write-up표튜터와 함께하는 Pwnable/HackCTF Write-up 2019. 8. 13. 12:50
이번에 풀어볼 문제는 Unexploitalbe #3이다.풀면서 들었던 생각은 자주자주 풀지않아서 그런지 머리가 굳는 느낌이다..ㅠ저번에도 그랬지만 어쨌든 풀어서 참 다행이다.. ㅎㅎ 해당 바이너리는 NX가 걸려있고 Partial RELRO이다.그러므로 .data, stack, heap 영역에 실행권한이 없으며Got Overwrite가 가능하다는 것을 알 수 있었다. 우선 바이너리를 실행시켜보겠다.특정한 문자열이 출력되고나서 사용자로부터 입력을 받고 있었다. IDA를 이용해보니 역시나 fgets함수 즉, 사용자로부터 입력을 받는 부분에서버퍼오버플로우를 일으킬 수 있는 취약점이 있다는 것을 알 수 있다. 조금 더 자세히 들여다보면 rbp-0x10 즉, 16개의 버퍼의 크기보다훨씬 큰 0x100을 입력할 수 ..
-
[HackCTF] Unexploitable #1, Unexploitable #2 Write-up표튜터와 함께하는 Pwnable/HackCTF Write-up 2019. 7. 18. 13:24
요즘 다른거 하느라 바빠서 진짜 오랜만에 포너블을 풀었다.. ㅠㅠ많이 까먹었을까봐 걱정했는데 그래도 새록새록 떠올라서 다행이다.이번에 풀어볼 문제는 Unexploitable #1과 Unexploitable #2 라는 문제이다.두 문제가 같은 방식으로 풀리므로 한 번에 진행하도록 하겠다.기준은 Unexploitable #1을 기준으로 설명을 진행하도록 하겠다. 음.. 푸는 방법은 쉽게 떠올랐지만 뭔가 gadget을 사용하는 센스가늦게 떠올라서 생각보다 시간이 걸렸다... 우선 바이너리를 보도록 하겠다. 64bit이며 dynamically linked 방식을 이용하고 있다. Mitigation의 경우 NX bit만 걸려있어서 .data, stack, heap 영역에실행권한이 없고 Partial RELRO이기..
-
[HackCTF] Basic_FSB Write-up표튜터와 함께하는 Pwnable/HackCTF Write-up 2019. 6. 11. 21:04
포너블 공부를 처음 시작할 때 가장 어렵게 느꼈던 FSB다.나중에 공부할려고 안풀고 몰아놨는데 이제 해야할 때 인 것 같다.FSB란 Format String Bug의 약자이다. 이 문제는 32bit Binary에서 진행된다. 고맙게도 아무런 Mitigation도 걸려있지 않다. ASLR은 아직 모르겠다.(아마 걸려있을 것 같다)Partial RELRO이기 때문에 우리는 Got Overwirte는 할 수 있다. 우선 문제를 실행시켜보았다.단순히 사용자로부터 입력을 받고 입력받은 값을 출력해주는 것 같다. 이번에는 IDA를 이용해서 코드를 보도록 하겠다.main 함수에는 특별해보이는 것은 없고 누가봐도 굉장히 수상한 이름의 vuln함수를 호출하고 있었다. 역시나 이 함수에서 바로..
-
[HackCTF] Register Write-up표튜터와 함께하는 Pwnable/HackCTF Write-up 2019. 5. 26. 20:07
이번에 풀어볼 문제는 64bit에서 진행되는 Register이다. 또하나 교훈을 얻게되는 문제였다!!* Thanks to Py0zz1 * 이 문제도 역시 NX와 Partial RELRO를 가지고 있다.그러므로 stack, heap, .data 영역에 실행권한이 없으면서Got Overwrite가 가능하다는 것을 알 수 있다. 문제를 실행시켜보도록 하겠다.RAX, RDI... 등의 register에 값을 입력하는 것으로 보이는Code가 보여진다. 또한 한 바퀴를 돌고나니까다시 RAX부터 register 값을 입력받고 있었다. 이번에는 IDA를 이용하여 코드를 보도록 하자!! main 함수의 경우 5초의 alarm 함수가 진행되었으며build 함수를 호출하고 있는 것을 알 수 있었다. < bui..
-
[HackCTF] Yes or no Write-up표튜터와 함께하는 Pwnable/HackCTF Write-up 2019. 5. 26. 15:38
이번 문제는 새로나온 문제인 Yes or no 이다.어려운 문제는 아니지만 다른 150점짜리 문제들 중에는 그래도 난이도가 있는 것 같다.(그게 아니라면 내가 어렵게 푼 것일지도.. ㅎㅎ) 해당 문제는 NX가 걸려있고 Partial RELRO이다.따라서 Stack, Heap, .data영역에 실행권한이 없으며Got Overwrite가 가능하다!! 문제를 실행시켜보니 사용자로부터 입력을 받고 있다.내가 입력한 값이 어떠한 조건을 만족하지 못해서인지"Sorry. You can't come with us"라는 출력문을 보여주었다.( 문제 이름도 그렇고 Show me the money인가??.. ) 해당 문제를 IDA로 보기로 하였다.fgets() 함수로 입력을 받고 문자열을 atoi를 이용해서 숫자로 바꾸어주..
-
[HackCTF] RTC Write-up표튜터와 함께하는 Pwnable/HackCTF Write-up 2019. 5. 10. 03:04
이번 문제는 RTC이다. 우어~ 다 풀었는데 마지막 "/bin/sh"에서 시간을 많이 소비했다. 그래도 결국 풀어서 기분은 좋다~스터디 세미나에서 Py0zz1가 발표했던 Return to Csu 기법을알고 있어서 생각보다는 오래 걸리지 않았다. RTC가 딱 봐도 Return To Csu라고 판단해서 저걸쓰면 되겠구나라는 생각이 들었기 때문이다.ㅎㅎ 바이너리는 NX가 걸려있고 Partial RELRO이므로 이전 문제와 같이 Stack, Heap, Data영역에 실행권한이없으며 Got Overwrite가 가능하다. 문제를 실행시켜보았다!사용자로부터 입력을 받는 간단한 구조였다. IDA와 GDB를 이용해서 각각 코드와 어셈블리어로 보았다.read 함수를 이용해서 입력을 받고 있었고 512개까지 입력이 가능했다..