반응형

Write-up 119

[pwnable.kr] simple login writeup

[pwnable.kr] simple login writeup [summary] fake ebpCan you get authentication from this server? ​ Download : http://pwnable.kr/bin/login ​ Running at : nc pwnable.kr 9003실행시켜보면 입력을 받고 특정 루틴에 따라 hash를 계산하여 출력한다.ch4rli3kop@Mandu:~/Downloads$ ./login Authenticate : AAAAA hash : b26fd022d7efc5b78180f16ada99c32a이제 내부를 분석할 차례인데, IDA가 없으니 pseudo 코드를 나타낼 수 없어 뭐로 설명해야할 지 잘 모르겠다. 귀찮으니 그냥 요약하겠음사용자의 입력은 우선..

Write-up 2019.06.21

[reversing.kr] Direct3D FPS writeup

[reversing.kr] Direct3D FPS writeup 완전완전쓰 기대하던 문제다. 3D 그래픽을 이용해서 만든 프로그램은 어떻게 되어있을까 굉장히 궁금했는데, 크게 다를 바는 없는 것 같다.아무튼 매번 하던 단순한 텍스트 박스와는 다르게 실제 FPS 게임같은 느낌이 나서 굉장히 재미있게 풀었다.사실 문제는 대충 어떻게 어떻게 풀긴 했지만, 코드 분석을 끝까지는 하지 못했다. 생각보다 크게 어렵지는 않아서 일단 풀이쓰고 나중에 더 하든가 해야겠다. 3D 프로그래밍을 배워서 나도 이런거 만들어보고 싶다.암튼 게임 실행화면은 다음과 같다.(한승연 예쁘다) 몬스터를 총으로 쏴서 없앨 수 있고, 몬스터에 닿으면 데미지가 닳다가 죽는다.클리어 조건이 뭔지는 잘 모르겠는데, 일단 해당 바이너리 내에 존재하..

Write-up 2019.05.16

[codeengn] Basic RCE L01 writeup

[codeengn] Basic RCE L01 writeup 코드엔진 문제를 조금씩 풀어보기로 했다.1번 문제는 옛날에 봤던 abex 문제임HDD를 CD-Rom으로 인식시키기 위해서는 GetDriveTypeA의 리턴값이 무엇이 되어야 하는가 코드를 살펴보면 다음과 같다. 0x0401018에서 호출하는 GetDriveTypeA 함수의 리턴 값에 따라서 분기문이 결정되는 것을 알 수 있다. 00401000 >/$ 6A 00 PUSH 0 ; /Style = MB_OK|MB_APPLMODAL 00401002 |. 68 00204000 PUSH 01.00402000 ; |Title = "abex' 1st crackme" 00401007 |. 68 12204000 PUSH 01.00402012 ; |Text = "M..

Write-up 2019.05.15

[reversing.kr] Replace writeup

[reversing.kr] Replace writeup 딱히 뭘 하라고 정해주지는 않은 문제다.그냥 실행시켜보면 입력 창을 볼 수 있고 숫자를 입력하고 check 버튼을 누르면 특정 동작을 한다.00401171 |. 56 PUSH ESI ; /pModule 00401172 |. FF15 14504000 CALL [] ; \GetModuleHandleA 00401178 |. 50 PUSH EAX 00401179 |. E8 82FEFFFF CALL Replace.00401000 0040117E |. 8945 A0 MOV [EBP-60],EAX 00401181 |. 50 PUSH EAX 00401182 |. E8 95000000 CALL Replace.0040121C 00401187 |. 8B45 EC MOV..

Write-up 2019.05.15

[wargame.kr] flee button writeup

[wargame.kr] flee button writeup 문제click the button! ​ i can't catch it!문제를 살펴보면 다음 그림과 같다. 마우스 포인터위치 기준으로 click me!가 움직이기 때문에, 해당 element에 clink 이벤트가 발생했을 경우, 발생하는 사건을 찾아서 직접 불러주도록 한다. view-source로 보면 난독화가 걸려있는데, 디버깅 창으로 보면 난독화가 해제되어 있는 소스를 볼 수 있다. click me!에 click 이벤트가 발생했을 때, 경로에 `?key=97c8'이 추가되므로 해당 경로를 넣어주면 flag를 얻을 수 있다.

Write-up 2019.05.01
반응형