Reverse Engineering

  • PADOCON 2010 hand-ray 리버싱 풀이 3rd

    PADOCON 2010 핸드레이 세 번째 문제는 두 번째 문제보다 더 많은 삽질을 요구했습니다. 예선전 문제였던 ddanjin과 유형이 같은데요, 차이라 하면은 핸드레이로 풀어야 한다는 것 뿐이네요… 문제 다음 코드에서 입력코드가 k1n0TheBest 일 때 출력될 값은 무엇인가? 방금 전 얘기했듯이 예선전의 ddanjin과 같은 유형입니다. PADOCON 2010 CTF 예선 문제를 보신 분이라면 대충 눈치 채시겠죠? 문제를 푸는 요령은…

  • PADOCON 2010 hand-ray 리버싱 풀이 2nd

    이번에는 두 번째 문제입니다. 이전 문제와 달리 약간의 프로그래밍 경험과 리버싱 경험이 필요했었구요. 핸드레이 리버싱인 만큼 컴퓨터를 비롯한 전자식 도구를 사용하지 않고 손(필기)으로 풀이하는 게 이 문제를 즐기는 포인트입니다. 한 마디로 요약하면, “삽질”을 해야 한다는 얘기죠? 문제 다음 프로그램에서 입력값이 j3m4I7w:_oYu?yjue 일때 출력값은 무엇인가? 일부로 주석을 지웠는지 모르겠지만, 같이 풀던 후배가 살짝 당황했던 문제입니다. 이…

  • PADOCON 2010 hand-ray 리버싱 풀이 1st

    이번 파도콘 때 컨퍼런스 발표 외에도 섹션 밖에서 재미있는 이벤트들이 있었습니다. 그 중에서 순천향대학교 Security First 에서 핸드레이 리버싱 문제를 출제했었지요. 문제들이 재미있어서 소개합니다. 문제 다음 프로그램은 어떤 함수호출 규약을 사용하는가?? 0x00401082 에서 401005 함수를 호출합니다. 그리고 0x00404005 에서 실행 흐름이 0x00401020 으로 넘어갑니다. 이 상태에서 어떤 함수 호출 규약이 적용되었는지를 묻는 문제입니다. 따로 풀이를…

  • InvokeClearTracks () at INETCPL.cpl in IE7

    Internet Explorer의 “검색 기록 삭제” 기능에 대해 조사할 일이 있어서 리버싱을 해보았습니다. 이 분석은 Windows XP SP3에서 IE7에 대하여 행하였습니다. INETCPL.cpl IE7에서 “검색 기록 삭제” 기능은 “도구 -> 인터넷 옵션 -> 일반” 탭에 있거나 “인터넷 등록 정보”에 있습니다. 다들 아시다시피 여기에서는 IE로 접속했던 웹사이트에서 내려받은 임시 파일, 쿠키나 히스토리(기록), 저장된 암호 등을 삭제할 수 있습니다….

  • Evan’s Debugger(EDB) Manual

    리눅스의 GUI 디버깅툴인 EDB의 매뉴얼입니다. 이 문서랑 동아리 선배의 Tor Project 문서 덕분에 2009 KISA 정보보호경진대회에서 최우수상 받고, HITB 말레이시아에도 참여할 수 있었네요. 윈도우즈의 OllyDbg와 유사하기 때문에 꽤 유용하게 쓰일 겁니다. 뭐, 요즘에는 Radare가 땡기긴 하네요… 매뉴얼 내용을 블로그에 모두 옮기려고 했는데, 이게 웬 삽질인가 싶어서 링크만 걸겠습니다. 이미 아는 분들도 계시겠지만, Articles에 문서가 업데이트…

  • OllyDbg로 쉽게 디버깅하기 – Back to User 모드

    OllyDbg는 Back to User 모드라는 기능을 지원하고 있습니다. 소스가 만 줄짜리인 프로그램을 처음부터 끝까지 맨땅에 헤딩하듯이 분석하기란 너무나 고달프기에, 이 Back to User 모드를 사용합니다. 이 기능을 사용하면 처음부터 분석할 필요 없이 디버깅을 하고 싶은 부분만 쉽게 찾아갈 수 있습니다. Back to User 모드 예를 들여서 설명하죠. Lenas Reversing for Newbies 강좌의 4번 째 문제…

  • DEFCON 2009 :: Binary L33tness 100, EDB로 풀어보자.

    지난 6~8일에 있었던 데프콘 CTF 예선 문제입니다. 위 그림처럼 실행하면 암호를 묻고 틀린다면, 욕을 하는 기분 나쁜 녀석입니다. 기분도 나빠졌으니 까짓꺼 한 번 깨줘야겠죠? 준비 사항 리눅스 계열의 OS. libnet1 패키지 Evans Debugger 이 파일은 ELF 포맷으로 되어 있습니다. ELF란 유닉스, 리눅스 등의 실행 파일의 구조인데 ,이에 대해 설명하려면 끝이 없으니 자세한 내용을 알고 싶으시면…