首页
社区
课程
招聘
[讨论]我寫的一個CrackMe
发表于: 2009-4-2 15:18 5414

[讨论]我寫的一個CrackMe

2009-4-2 15:18
5414
我只是想與太家研究一下
我還有什麼方法保護我的軟件.
所以這個crackme只有一個key能夠通過,
不喜歡的話, 請不要罵我.
成功的話請說說具體方法,
請賜教.

謝謝

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
一个C++ 写的就一个按钮,1.8M?

ALT+F4 关了以后进程里还有两个wc.exe

什么意思你?
2009-4-2 15:37
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
3
我不懂perl。

环境变量:

"ALLUSERSPROFILE=D:\Documents and Settings\All Users"
"APPDATA=D:\Documents and Settings\Administrator\Application Data"
"CLIENTNAME=Console"
"CommonProgramFiles=D:\Program Files (x86)\Common Files"
"CommonProgramFiles(x86)=D:\Program Files (x86)\Common Files"
"CommonProgramW6432=D:\Program Files\Common Files"
"COMPUTERNAME=PZC-LAPTOP"
"ComSpec=D:\WINDOWS\system32\cmd.exe"
"FP_NO_HOST_CHECK=NO"
"HOMEDRIVE=D:"
"HOMEPATH=\Documents and Settings\Administrator"
"LOGONSERVER=\\PZC-LAPTOP"
"NUMBER_OF_PROCESSORS=2"
"OS=Windows_NT"
"PATH=H:\Temp\par-Administrator\cache-c7eb51bdb62009ba8f6e8d5d2ec65d6a209f8c97;D:\WINDOWS\system32;D:\WINDOWS;D:\WINDOWS\system32\WBEM"
"PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH"
"PROCESSOR_ARCHITECTURE=x86"
"PROCESSOR_ARCHITEW6432=AMD64"
"PROCESSOR_IDENTIFIER=EM64T Family 6 Model 15 Stepping 13, GenuineIntel"
"PROCESSOR_LEVEL=6"
"PROCESSOR_REVISION=0f0d"
"ProgramFiles=D:\Program Files (x86)"
"ProgramFiles(x86)=D:\Program Files (x86)"
"ProgramW6432=D:\Program Files"
"RAMDISK=H:"
"Rav=D:\Documents and Settings\All Users\Application Data\Rising\Rav"
"RFW=D:\Documents and Settings\All Users\Application Data\Rising\RFW"
"SESSIONNAME=Console"
"SystemDrive=D:"
"SystemRoot=D:\WINDOWS"
"TEMP=H:\Temp"
"TMP=H:\Temp"
"USERDOMAIN=PZC-LAPTOP"
"USERNAME=Administrator"
"USERPROFILE=D:\Documents and Settings\Administrator"
"windir=D:\WINDOWS"
"PAR_INITIALIZED=1"
"PAR_PROGNAME=D:\Documents and Settings\Administrator\Desktop\wc.exe"
"PAR_TEMP=H:\Temp\par-Administrator\cache-c7eb51bdb62009ba8f6e8d5d2ec65d6a209f8c97"
"LD_LIBRARY_PATH=H:\Temp\par-Administrator\cache-c7eb51bdb62009ba8f6e8d5d2ec65d6a209f8c97"
"LIBPATH=H:\Temp\par-Administrator\cache-c7eb51bdb62009ba8f6e8d5d2ec65d6a209f8c97"
"LIBRARY_PATH=H:\Temp\par-Administrator\cache-c7eb51bdb62009ba8f6e8d5d2ec65d6a209f8c97"
"DYLD_LIBRARY_PATH=H:\Temp\par-Administrator\cache-c7eb51bdb62009ba8f6e8d5d2ec65d6a209f8c97"
"PAR_ARGC=1"
"PAR_ARGV_0=D:\Documents and Settings\Administrator\Desktop\wc.exe"
"PAR_SPAWNED=1"


......

package main;

require PAR;
unshift @INC, \&PAR::find_par;
PAR->import(@par_args);

die qq(par.pl: Can't open perl script "$progname": No such file or directory\n)
    unless -e $progname;

do $progname;
CORE::exit($1) if ($@ =~/^_TK_EXIT_\((\d+)\)/);
die $@ if $@;

};

$::__ERROR = $@ if $@;
}

CORE::exit($1) if ($::__ERROR =~/^_TK_EXIT_\((\d+)\)/);
die $::__ERROR if $::__ERROR;

1;

#line 1002

__END__
 


真的不懂perl,看不懂算法。
2009-4-2 16:26
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
书呆你说是perl写的?  还反调试呢。

哎呀查壳是c++ dll啊。  这。。。。。。。。。
2009-4-2 16:29
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
對不起,
這個好像只是"PAR"(Perl的打包器)的代碼,
不是我的代碼.

另外反調試只是初步,
基本上沒有什麼技術含量.
2009-4-2 17:49
0
雪    币: 229
活跃值: (508)
能力值: ( LV10,RANK:170 )
在线值:
发帖
回帖
粉丝
6
0022FF4C   0040472E  /CALL 到 _spawnvpe 来自 wc.00404729
0022FF50   00000000  |mode = P_WAIT
0022FF54   003ECD30  |path = "C:\HATLING\temp\par-__?,F7,"\cache-a8e3322b12976b8bcb2ce65e5986b8f33e11c70a/wc.exe"
0022FF58   003E24E8  |argv = 003E24E8
0022FF5C   003ECDA0  \env = 003ECDA0

这个是堆栈里的,,wc.exe(1.8M的那个)把很多文件(包括一个wc.exe和很多dll)释放到%systemroot%\temp\par*#*#*#\cache*#*#\里面去了
"_spawnvpe "这个函数我查了下,和CreateProcess的功能类似
这个函数执行完od就退出了,所以我怀疑%systemroot%\temp\par*#*#*#\cache*#*#\里面的那个wc.exe是不是专门用来anti的..但单独调试它od又不退出
为什么
执行完这个函数又不能断下来.. 但发觉是函数执行完后延时了一下od才推出的
2009-4-2 21:50
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
7
我还以为算法是用perl写的,然后把perl代码打包成的EXE。所以跟到了perl51.dll的perl_parse函数,以为这是算法呢。

原来这是打包器的代码。

我再看看。
2009-4-2 22:08
0
雪    币: 229
活跃值: (508)
能力值: ( LV10,RANK:170 )
在线值:
发帖
回帖
粉丝
8
%systemroot%\temp\par*#*#*#\cache*#*#\里面的那个wc.exe为什么不能单独运行呢
2009-4-2 22:32
0
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
9
 



my $_;
a();
$Win = new Win32::GUI::DialogBox(
      -left   => 341,
      -top    => 218,
      -width  => 300,
      -height => 55,
          -background => [0,0,0],
      -name   => "Win",
      -text   => "CrackMe",
          -topmost => 1,
          -remstyle      => 0xFFFFFFFF,
      -addstyle      => 0x80000000,
);
$Win->AddTextfield(
       -text    => "",
       -name    => 'InputLine',
       -left    => 5,
       -top     => 4,
       -width   => 282,
       -height  => 20,
);

$Win->AddButton(
       -text    => "Register",
       -name    => "btnR",
       -left    => 119,
       -top     => 27,
       -width   => 54,
       -height  => 20,
       -foreground => 0,
);

sub btnR_Click {
        my $text = $Win->InputLine->Text();
        if($text ne 'HOWDY! WORLD'){
                Win32::MsgBox("\'$text\' is Wrong!",0,'wrong');
        }else{
                Win32::MsgBox('You Got It!',0,'right');
        }
}

$Win->Show();
Win32::GUI::Dialog();

sub Win_Terminate {-1}
上传的附件:
2009-4-3 00:18
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
服了....
差點忘了記憶體編輯器.
2009-4-3 09:08
0
游客
登录 | 注册 方可回帖
返回
//