Category2014/05 (6)

[윈도우 후킹] Message hooking - 1

0x00 후킹의 개념후킹은 소프트웨어 공학 용어로, 운영 체제나 응용 소프트웨어 등의 각종 컴퓨터 프로그램에서 소프트웨어 구성 요소 간에 발생 하는 함수 호출, 메세지, 이벤트 등을 중간에 바꾸거나 가로채는 명령, 방법, 기술이나 행위를 말한다. 이때 이러한 간섭된 함수 호출, 이벤트 또는 메세지 처리하는 코크를 후크라고 한다.크래킹을 할떄 크래킹 대상 컴퓨터의 메모리 정보, 키보드 입력 정보등을 뺴돌리기 위해서 사용 되기도 한다...

[PlaidCTF 2013] three eyed fish_100

문제는 64bit elf 파일이며, stripted가 걸려 있는 파일 입니다.실행시 아무런 반응이 없어서 strace로 실행을 시켜 보았습니다.ptrace(PTRACE_TRACEME, 0, 0, 0) 에서 에러가 남을 확인 할 수 있습니다.찾아보니까 주어진 프로세스에 대한 UDI가 현재 사용자의 UID와 매칭되지 않으면 다음과 같은 에러가 뜨는 것 입니다. 단순히 UID만을 검사 하는것이면은 프로그램에서 '없어도' 될것이라 판단이 되며 코드..

[CSAW CTF 2012] Reversing_400

문제는 64bit, not stripped 파일 입니다실행시 암호화된 Key값이 보입니다. 단순히 Key값만을 출력해줌을 알 수 있습니다.IDA64로 디버깅 했을시, 단순히 값들을 입력받고 encrypt 함수를 실행시켜서 암호화 한후 그 결과값을 출력 해 줍니다.허나 이 문제의 경우 encrypt 함수가 있고 decrypt함수도 존재 합니다.즉 encrypt를 Call 하는 부분을 강제로 decrypt로 eip를 바꾸게 되..

[Codegate2014] dodoCrackme_200

프로그램은 다음과 같이 64-bit elf파일이며 stripped가 걸려 있습니다.실행을 했을 떄 입력을 받으며 Permission denied을 출력하며 프로그램이 종료 됩니다..strace로 확인 했을 때 write와 와 read가 보임을 확인 할 수 있습니다.IDA 64로 열어봤을 때, 이러한 루틴이 반복됨을 확인했고, 증가 된 값을 메모리 어딘가에 저장을 합니다.반복되었기 때문에 찍히는 문자열을 보았고, 키값이 나왔습니다.허나 이 방식은 제대..

[Reversing.kr] Direct3D_FPS

프로그램을 실행 시키면 다음과 같은 3D_FPS 게임이 시작 되게 됩니다.저 달걀(?)을 몇방 쏘면 사라지며 게임내의 모든 달걀들을 없에더라도 클리어가 되질 않습니다.또한 HP10은 달걀과 몸을 부딕쳤을 경우 피가 소모 됩니다.상단바 위의 ReversingKr / FPS는 값이 시시각각 변하긴 하는데 그닥 중요한 값이 아니라 생각이 들었습니다.Ollydbg의 막강한 기능중 하나인 Search for all referenced&nbs..

[Secuinside2013] beist_attack_game_150

프로그램을 실행 시키면 다음과 같은 게임 화면이 나오게 됩니다.점수 획득이 가능하며 1000점을 달성했을 시에 보스몹이 나오게 되고그 보스몹의 피는 999999 입니다.보스몹은 전체공격(?)을 시전해서 정상적인 방법으로도저히 클리어가 불가능합니다.보스몹 출현!!보스몹의 피를 깍는건 거의 불가능 합니다.현재 게임에서 볼수 있는 단서는 점수라고 생각하고그 점수값이 1000점이 되었을때 새로운 함수가 실행 된다라는 생각이 들어서점수를 중심적으로 찾아 보았..