전체 글(168)
-
리버스엔지니어링 문제 3
http://codeengn.com/challenges/basic/03 프로그램을 실행해보면 Regcode를 넣는 부분이 있습니다. 정확한 문자열을 넣으면 되는... 그런 프로그램인것 같네요. 문제 내용은 비교함수 이름을 찾는 것입니다. Text string으로 검색을 해보면 아래와 같은 부분을 발견할 수 있습니다. 키로 추측되는 값도 보이고 메시지들도 있네요. 비교 함수는 vbaStrCmp라는 것을 확인할 수 있습니다.
2015.03.23 -
리버스엔지니어링 문제 2
http://codeengn.com/challenges/basic/02 실행되지 않는 프로그램에서 패스워드를 찾는 문제입니다. 일단 실행해보려고하면 에러가 발생하면서 실행되지 않습니다. 파일포맷에 문제가 있다는 것을 짐작할 수 있습니다. hex 에디터로 열어봅니다.쭉 읽다보면 패스워드로 추측되는 값을 발견할 수 있습니다. JK3FJZh
2015.03.22 -
리버스엔지니어링 문제 1
http://codeengn.com/challenges/basic/01 파일을 받아 더블클릭하여 실행하면 Make me...가 나오고 다음으로 Nah... This is not a CD-ROM... 이 나옵니다. CD-ROM으로 인식시키기 위해 GetDriveTypeA의 리턴값을 바꿔야한다고합니다. 해당 파일의 어셈블리 부분입니다.밑에 2개의 분기문이 있고 OK, 부분을 출력해야 정답이 됩니다. 분기문을 보면 00401026부분 위에 CMP EAX, ESI가 있습니다. JE명령이기 때문에 ==일때 조건문을 실행합니다. 그럼 EAX와 ESI의 값이 같아야 한다는건데 브레이크 포인트를 걸고 진행해보면 해당 위치에 도달했을 시 EAX는 1이고 ESI는 3의 값을 가집니다. GetDriveTypeA를 호출하는 ..
2015.03.22 -
WFP Driver programming
이번에는 WFP(Windows Filtering Platform)에 대해 간단하게 정리해보겠습니다. WFP는 NDIS의 다음 버전으로 네트워킹 스택에서 발생하는 여러 정의된 이벤트에 Callout이라는 것을 걸어서 이벤트 핸들링 처럼 처리하는 방식입니다. 자료는 NDIS보다 훨씬 더 부족합니다. 구글에서 wfp라고 검색하면 유엔세계식량계획이 먼저 나오고 wfp or wndows filt... 풀네임과 기타 키워드를 같이 검색하면 페이지조차 얼마 안됩니다. 처음 막 할때는 막막했습니다... ㅎㅎ NDIS는 네이버 블로그라도 좀 있는데 WFP는 전멸. ... NDIS와 마찬가지로 MSDN의 Windows Filtering Platform Sample을 토대로 진행하겠습니다. 그럼 간략하게 WFP의 작성방식부..
2015.03.19 -
보안 취약점
1. 스택 오버플로우스택 오버플로우를 통한 공격은 대체로 악성 코드가 들어가 있는 함수의 포인터를 프로그램이 실행할 스택의 위치에 덮어씌움으로써 발생할 수 있습니다.예를 보면 다음과 같습니다.int counter;char string[8];float number; 와 같은 지역 변수를 정의했을 때 스택의 상태는 counterstring[0]...string[7];numberreturn address처럼 되어있습니다. string 변수에 8이상의 값을 써 넣을 경우 스택은 counterstring[0]...string[7]string[8]?string[9]?string[10]?...처럼 변경됩니다. 여기서 봐야할 것은 함수가 끝난 후 반환주소를 통해 반환을 해야하는데 그곳에 string[9]?의 값이 들어..
2015.03.16 -
NDIS 6.0 Filter Driver programming
NDIS를 통한 프로젝트를 진행하면서 그나마 최신 국내 NDIS 프로그래밍 포스팅이 없어서 간략하게 정리를 하려고합니다. 더 상세하게는 필요하다고 생각되면 따로 포스팅하겠습니다. 또한 저도 학생의 신분으로 이쪽으로 깊게 공부한 것은 아니기 때문에 잘못된 부분이 있으면 알려주시면 감사하겠습니다. NDIS에 대한 개념적인 소개는 생략하겠습니다. MSDN의 NDIS 6.0 Filter Driver Sample을 바탕으로 진행합니다. 우선 NDIS를 통해 할 수 있는 건 윈도우 7에서는 MAC address부터 payload까지 전부 볼 수 있습니다. WFP는 윈도우8부터 Ethernet을 볼 수 있어서 윈도우7에서 MAC을 보기위해선 NDIS를 이용해야 합니다. 솔루션을 열면 주로 filter.c를 수정하게 ..
2015.03.13