목록2018/11 (8)
OutDoorFrog의 리버싱 이야기
멘탈에 금가는 중인 개구리(OutDoorFrog)입니다. 프로젝트를 힘차게 진행해야할 시기가 다가옵니다. 개발 부분에서는 크로스 플랫폼 핵심 모듈 설계의 기술이란 도서를 보며 깨지는 중이고 보안 부분에서는 디컴파일을 하고도 기능을 못 유추할 것 같은 쉘코드를 보며 깨지는 중입니다. 오늘은 연구에 조금 진전이 있어서 이야기를 해드릴려고합니다. 썰을 풀어보겠습니다!! 0. DLLMain을 찾았습니다만.. 대부분의 프로그램은 Main 함수로부터 시작합니다. 악성코드 분석도 Main 함수를 찾는 것을 첫 번째 목표로 합니다. 나뭇잎 책의 말을 빌리자면 베이스 캠프를 설치한다고 보면 되겠네요. 윈도우 시스템 프로그래밍에 1년 반이라는 시간을 투자했던만큼WinAPI 관련 소스 코드를 해석할 때 좀 더 정확하고 빠르..
안녕하세요! 재활치료 중인 개구리입니다! 세미나 참가 이후... 정보보안 영재교육원에서 정보보안경진대회를 개최했었습니다. 저는 비록 교육원생은 아니지만 Demon팀원 한 분과 갓갓 한 분에게 바이너리 파일을 제공해달라고 요청했습니다! 그리고 간곡한 요청에 마음 넓은 두 분께서 파일을 제공해주셨습니다! 1. Asm picoCTF 때 많이 경험해본 문제 유형입니다.(어셈 코드만 주기) 파일 시그니처를 파악하기 위해 010 editor로 열어보았습니다. 파일 시그니처 대신 귀여운 gdb로 main 함수를 disass한 데이터를 제공했더군요. cmp 명령어 이후 jne 명령어를 사용해서 분기점을 만들어주는데.. cat flag라는 문자열을 입력했는데 Wrong... 이라는 문자열이 출력된 모습이 보이고.. %d..
재활치료 중인 개구리, OutDoorFrog입니다! 0. 인사말 윈도우 아키텍처를 어떻게 설명드릴까... 고민하던 중 어떤 분께서 리버싱케알 문제에 대해서 언급을 해주셨습니다. 요즈음 온라인 CTF랑 세미나에 참가하느라 정신이 없었는데 조언을 해주신 분께 감사의 말씀을 전해드리고 싶습니다. 재활 치료 중이니 난이도가 그나마 쉬운 문제부터 천천히 풀겠습니다! (까먹고 있었는데 정말 감사합니다.) 1. IDA를 이용한 풀이 이번 풀이는 아이다 디컴파일러를 이용해서 트레이싱 없이 진행할 예정입니다. (도구최고) main 함수를 찾아 디컴파일 해봅시다. 이미 풀었기 때문에 각 함수마다 역할에 알맞은 이름을 붙인 상태입니다. Input 함수 : scanf 함수를 호출하고, 문자열을 입력받습니다. judgement..