Delphi木马DIY之代码藏后门可能性
作者: 佚名, 出处:论坛整理, 责任编辑: 韩博颖,
2008-06-23 09:41
我想给新手朋友说的就是,虽然代码里面藏后门容易被发现,但是,就借着他们这种不太懂却又贪便宜的思想,藏些代码在里面,也不是没有可能。比如说下面这个Delphi例子。
现在,好多的朋友都会写程序了,但肯定不一定对程序很精通。估计很多都是拿到整齐点的源代码勉强阅读一下还是可以,就算不能全懂,至少能懂大半部分,编译出来更是没有什么问题。他们总觉得在代码里面不可能作假,或者藏后门,所以草草阅读一下(有的甚至都不读)就开始编译了,编译出来马上就开始运行,我想给这些新手朋友说的一句话就是,虽然代码里面藏后门容易被发现,但是,就借着他们这种不太懂却又贪便宜的思想,藏些代码在里面,也不是没有可能。
比如说下面这个简单的Delphi的例子,大家看看在点击了Button1按钮后会发生什么事情:
| procedure ReplaceShowMessage(const Msg: string); begin ShowMessagePos(你好, -1, -1); end; procedure NewShowMessage(const Msg: string); type TShowMessage = procedure(const Msg: string); begin TShowMessage(@ReplaceShowMessage)(Msg); end; procedure EndNewShowMessage; begin end; procedure TForm1.FormCreate(Sender: TObject); var vProcess: THandle; vNumberOfBytesRead: DWORD; begin vProcess := OpenProcess(PROCESS_ALL_ACCESS, True, GetCurrentProcessId); try WriteProcessMemory(vProcess, @ShowMessage, @NewShowMessage, Integer(@EndNewShowMessage) - Integer(@NewShowMessage), vNumberOfBytesRead); finally CloseHandle(vProcess); end; end; procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage(Hello); end; |

