네이트온 3.0 리버스엔지니어링 중 -_-
네이트온은 인증에 DES를 사용하는데, 이쁘게도 DESUtil.dll 을 따로 떼어놨다. exports 된 함수는 딱 4개, encodeNate, encodeNate_key, decodeNate, decodeNate_key.
DES Key가 define되어있지 않을 때 디폴트로 사용할 함수들이 _key 가 없는 함수들이다. 디스어셈블러가 Default Key를 찾아주었다. rue3lso9 랜다 ㅎㅎ
프로토콜을 보다보니 MSN과 많이 흡사하다. 귀엽게 봐줘야지.
Comments
11 thoughts shared
pistos
오옷! 멋져~ 그럼 이제 네이트온 클론도 만들어지는것인가~
나도 끼워줘~
xhoto
나두 ㅋㅋㅋ
아흐 key는 찾았지만 일반적인 DES와는 차이가 있어서 인증부분에서 막혀있어요
Key size가 8바이트라는 것도 같고,
프로토콜상에서도 AUTH 방식이 DES라고 쓰지만
Block encrypt가 짬뽕되어있는데..
추측 리버스에는 한계가 와서.. 어셈보는중이지요
200라인만 c코드로 옮겨노면 대는데 어흑 어려워;
윤종현
으흐흐.. 그냥 DES가 아님. 3DES라고 추측되네요. ^^
rath
흐흐 3DES는 키 3개가 필요하잖아요~ =3
윤종현
앗, 그래요? ㅋㅋ 나두 디스어셈블 해봐야징.
.text:10003250 public decodeNate .text:10003250 decodeNate proc near .text:10003250 .text:10003250 arg_0 = dword ptr 4 .text:10003250 arg_4 = dword ptr 8 .text:10003250 .text:10003250 mov eax, [esp+arg_0] .text:10003254 mov ecx, [esp+arg_4] .text:10003258 push eax .text:10003259 push offset aRue3lso9 ; "rue3lso9" .text:1000325E push ecx .text:1000325F call sub_10002EF0 .text:10003264 add esp, 0Ch .text:10003267 retn .text:10003267 decodeNate endp
키는 확실히 저거 1개네요. 문자열로 박아 놓다니.. ^^
주말에 삽질 좀 해 보고 결과를.. -_-;;
rath
흐흐 저도 IDA Pro 쓰는데
윤종현
최강의 디스어셈블러. ㅎㅎ
ㅎㅎ DESUtil.dll을 직접 링크해서 날려보았는데, DES를 그대로 쓰는게 맞네요. 대신 파라미터 encodeNate로 넘겨진 파라미터 자체가 약간 가공되어있는듯 해요.
encodeNate는 DES crypt랑 완전히 동일해요
Continue Reading
Discover more thoughts and insights
Firefox 3.1 beta 1 둘러보기, Location awareness 와 Ctrl-Tab UI
iPAQ hx4700 덕분에 잘 읽지 못하고 휙휙 넘겼던 RSS feed 들을 많이 읽다보니 자연스레 관심사가 바뀌어 이 글을 보고 나도 파폭 3.1 베타 써보자.. 하고 요리조리 둘러본 후기를 남겨봅니다.
스택 기반 시간 관리
프로그래밍을 하다보면 초심을 잃게 되는 경우가 많다. 세계 각지에 퍼져있는 정보들에 대한 접근성이 기하급수적으로 높아졌기 때문이다. 라고 썼지만 그 근원은 지적 욕심 때문이다. 그런데 지적 욕심을 버릴 생각은
TextToSpeech API 구축 방안들
작년말에 Neospeech 에서 TTS 엔진을 구매했다. 한국어 Voice 인 유미, 준우 이렇게 2개를 구매했고 Voice 당 USD $138 를 줬다. Windows 전용이라 (리눅스 + API 버전은 가격이