CodeEngn Challenge

Checkin List

최근 인증 기록을 확인할 수 있습니다. 공개 별칭과 코멘트만 표시됩니다.

Public record

최근 인증 페이지당 50건

24,553건의 공개 인증 기록 · 341 / 492 페이지

Checkin timeNameLevelCommentPoint
2015-03-03 03:10:52symnoisyBasic L05Challenges : Basic 05 Author : Acid Bytes [CFF] Korean : 이 프로그램의 등록키는 무엇인가 English : The registration key of this program is? 문제는 굉장히 쉽게 풀었다. UPX 패킹이 되있으므로, 유틸을 사용해서 언팩을 해주던가, 가내수공업으로 언팩을 해주는 방법 두가지가 있겠다. 따로 설명은 안하겟고, 맨마지막 jmp 부분에 브레이크를 걸어주고 덤프를 뜬다던가, UPX 의시작점 부분에서 ESP 의값을 하드웨어 브레이크를 걸어주고 덤프를 떠준다. 유틸사용이야 말해봐야 입아플거같고, 이프로그램은 키값과 동시에 Name 부분의 란이 따로 존재한다. UPX를 언패킹해주면,시리얼 키를 EDX 레지스터에 넣고 CMP하는 구문이있다. 따로 브레이크를 걸필요없이, 노출되어있어서 쉽게 찾을수 있었다. 코드엔진에서 물어보는 키값은 이것(등록키)이지만, 원래의 본프로그램의 경우, 키값을 맞춤과 동시에 그에 맞는 name 값을 input으로 넣어줘야 한다. serial키 부분보다는 name 부분에 좀더 신경을 쓴 프로그램 같다 우선, 해당 프로그램이 어떤 루틴을 갖는지 분석을 해보면(UPX를 언패킹 해서 OEP에 접근했을때 부터의 이야기이다) 1)name의 input이 있는지 없는지 에 따라 분기한다 2) serial 값이 있는지 없는지에 따라 또한 분기한다. 3)Register User 부분인데 이 아래에 존재하는 CALL 0x00403B2C에 암호화 루틴이 존재한다 4)name의 input 값이 맞는지 아닌지에따라 성공 실패 분기문이 갈린다. 5)serial 값이 맞는지 아닌지에 따라 성공 실패 분기 문이 갈린다 주석을 첨가한 약간의 코드를 첨부한다.(name 루틴부분을 분석할까 했는데 귀찮아서 안함 ㅡㅡ;나중에 심심할때 해보겟음 ) 9
2015-03-03 02:29:49soohyun0504Basic L20-39
2015-03-03 02:29:10symnoisyBasic L04Challenges : Basic 04 Author : CodeEngn Korean : 이 프로그램은 디버거 프로그램을 탐지하는 기능을 갖고 있다. 디버거를 탐지하는 함수의 이름은 무엇인가 English : This program can detect debuggers. Find out the name of the debugger detecting function the program uses. 원래 알고 있는 함수이지만, 확실한지 검증해보기 위해서 프로그램을 실행시킨뒤 확인해보았다. intermodular call 부분을 확인하다보면, 다음과 같은 API 를 발견할 수 있다 딱히 시간을 쓸 필요는 없는 문제였다. 7
2015-03-02 23:32:56soohyun0504Basic L19-37
2015-03-02 05:42:45soohyun0504Basic L18-35
2015-03-02 04:56:36soohyun0504Basic L17-33
2015-03-02 02:58:18soohyun0504Basic L16-31
2015-03-02 02:42:55soohyun0504Basic L15-29
2015-03-02 02:06:41soohyun0504Basic L14-27
2015-03-02 00:06:42soohyun0504Basic L13-25
2015-03-01 23:33:24soohyun0504Basic L12-23
2015-03-01 20:31:57soohyun0504Basic L11-21
2015-03-01 19:23:02e32592Basic L08인증15
2015-03-01 12:07:45e32592Basic L06인증합니다.11
2015-03-01 04:55:53soohyun0504Basic L09-17
2015-02-28 23:21:37soohyun0504Basic L08-15
2015-02-28 23:03:28soohyun0504Basic L07-13
2015-02-28 22:28:36soohyun0504Basic L06-11
2015-02-28 21:03:27soohyun0504Basic L05-9
2015-02-28 20:03:33soohyun0504Basic L04-7
2015-02-27 21:48:35K3is3rCrypto L02crypto027
2015-02-27 21:28:11INSECT.BMalware L01-5
2015-02-27 02:11:26symnoisyBasic L03맨처음에 함수 이름물어보길래 그냥 strcmp쓰면되는줄 알았는데 알고보니 밑에 실행파일이있다. 실행파일을 열어보면 crackme 문제와 비슷하게 키값을 인증하는 문제이다. 아마도 흰트를 아래와 같이 준 이유는 해당 함수에 브레이크를 걸라고 저렇게 준거같다. strcmp 함수에 브레이크를 걸어주고 run 해준뒤, 임의의 값을 넣어준다. (왜냐하면,strcmp() 함수자체가 , 파라미터 1과 파라미터 2 의값을 비교해서 true false를 판별하기때문에, 내가 임의의 값을 넣어준다면, 원래 비교하는 키값을 얻을수 있기 때문이다) 따라서 다음과 같은 결과를 얻을 수있다. 키값은 삭제 했다. 결과적으로 물어본 vba에서의 문자열 비교함수는 위와 같다 5
2015-02-27 01:44:47symnoisyBasic L02문제 2번의 경우도 별내용은 없엇고,실행 파일을 실행해봐도 별다른 특징은 찾을수 없엇지만, 디버거를 붙여보려 했지만, 디버거가 읽어 오지 못하는 것으로 보아, pe헤더에 문제가 있을것으로 예상했다. 따라서, PEView를 이용해서 PE를 보아하니, IMAGE_DOS_HEADER는 보이나, 하위 디렉터리가 없엇다. pe 에서 장난질쳐논것이 분명하고 PE에서 바이너리를 보아하니, Crackme#1 파일을 가지고 장난질 쳐논것 같다. 키값은 PEview를 키고, Crackme#1문제에서 MessageBox()가 호출하는 문자열 뒷부분에 존재한다. 3
2015-02-27 01:28:21symnoisyBasic L01MSDN에서 GetDriveType() API를 검색해봣는데, 리턴값이 5인경우 CD-ROM을 뜻한다 1
2015-02-26 18:15:33K3is3rBasic L19基础1937
2015-02-26 18:15:02K3is3rBasic L17基础1733
2015-02-26 18:14:08K3is3rBasic L09基础917
2015-02-26 18:08:52K3is3rBasic L15基础1529
2015-02-26 18:08:05K3is3rBasic L13基础1325
2015-02-26 18:06:41K3is3rBasic L12基础1223
2015-02-26 18:05:59K3is3rBasic L11基础1121
2015-02-26 18:04:28K3is3rBasic L10基础1019
2015-02-26 18:03:18K3is3rBasic L08基础815
2015-02-26 18:02:38K3is3rBasic L07基础713
2015-02-26 17:59:56K3is3rBasic L06基础611
2015-02-26 17:58:44K3is3rBasic L02基础23
2015-02-26 15:54:26ab741208Basic L07-13
2015-02-26 15:46:38ab741208Basic L06-11
2015-02-26 15:42:08ab741208Basic L05-9
2015-02-26 15:35:29ab741208Basic L04-7
2015-02-26 15:34:05ab741208Basic L03-5
2015-02-26 15:32:34ab741208Basic L02-3
2015-02-26 15:22:14ab741208Basic L01-1
2015-02-26 13:10:14kang010330Advance L04-11
2015-02-26 13:03:57kang010330Advance L03-9
2015-02-26 12:09:07kang010330Advance L01-5
2015-02-26 07:33:19soohyun0504Basic L03-5
2015-02-26 06:00:23soohyun0504Basic L02-3
2015-02-26 05:15:01soohyun0504Basic L01-1