안녕하세요 sweetchip입니다.
오랜만에 리버싱을 해봤네요 ㅎㅎ
오늘햇던 크랙미는 duelist's crackme 1 입니다.
// Keygen
Duelist's_crackme_1_keygen_sweetchip.exe
//Crack me
Keygen-source // source.cpp
#include
#include
int main()
{
puts("///////////////////////////////////\n");
puts("///// duelist's 1st crackme /////\n");
puts("///// Key gen /////\n");
puts("///// By sweetchip /////\n");
puts("///////////////////////////////////\n\n\n");
puts("Key is \n");
char encrypted[] = "{aexdm&kzikcem&<&fmjam{&jq&l}mda{|";
int i = strlen(encrypted);
for(int j=0;j
{
encrypted[j] = encrypted[j]^0x43;
encrypted[j] = encrypted[j]^0x1E;
encrypted[j] = encrypted[j]^0x55;
}
printf("%s\n\n",encrypted);
system("pause");
}
간단하게 3단계에 걸쳐서 Xor 연산을 하는 과정을 다시 거꾸로 되살렸습니다.
xor로 각각 3번씩 인코딩된 encrypt[] 를 각각 0x55, 0x1E, 0x43으로 한글자씩 Xor 시키면 끝입니다.
정말 간단해서 입문 하시는분들께는 최고 입니다 ^^
감사합니다.
이름모를 Crackme 풀이 키젠포함 (0) | 2012.11.24 |
---|---|
Duelist's Crackme 2 Keyfile (0) | 2012.11.21 |
Lafarge's Crackme v0.2 키젠 (1) | 2012.10.31 |
UPX, Olly-dbg 로 직접 언패킹 하기 (11) | 2012.09.16 |
[리버싱] For 문 분석 (2) | 2012.08.14 |