因为上次发了篇文章,<<关于三线程防杀的一些思想和VC代码>>,有很多人说特别简单,确实我也知道,自己写的是比较基础的一些东西,现阶段自己也写不了很高深的东西.
(上次文章写的较多,为方便大家查看,今再开一贴)
原文章地址:http://bbs.pediy.com/showthread.php?t=131537
写文章有2个目的:其一,给自己前阶段的学习作一个总结,以后回想起来也知道这段时间自己在做什么,不至于是空白的;其二,论坛上也还有很多像我一样的菜鸟朋友,文章也算是起一个交流作用吧.
今天再发一帖,我把上次发的文章的代码重写了一遍,修改了很多地方(主要部分没有改变),上次源码给了,软件没有作任何处理,写出来就发出来了,所以有点基础的朋友都可以逆向我的软件了.
本来今天发的这款软件只能算是个半成品,因为这几天上课的时间较紧,也没什么时间写,清明想回家,所以先发一个出来,大家先看一下,我回家之后把没加上的代码补上,这件事就算完了.源码清明后补全程序后一齐放出.(欢迎大家跟帖指出软件存在的缺陷和漏洞)
声明:
本程序没有任何恶意,由于时间关系,没有做杀毒软件免杀,本人以看雪ID担保,程序没有加入任何恶意代码,源码等清明我到学校后再放出,有能力的同学可以逆向一下我的程序,写的很烂,就不多说了,为了测试的效果,请关闭杀毒软件或者在虚拟机里面测试
今天到学校了,把没有写完的东西写完吧,写完后就全心全意的去写搜索引擎吧,这个是我同学提出来的,我觉得我们合作可以写出来,可能没有那么完美,算是人生的一种经历吧,毕业后找工作也可以拿出个像样的东西吧....
先说一下这个软件工作机制吧,我没有想过要写的多复杂,多具有杀伤力,这个不是我追求的,毕竟我不想从事木马或者是病毒的写作.虽然我以前也做过免杀,控制过别人的电脑,我觉得那一点也不光明,别人问你在做什么,真的说不出口,虽然心里面不是这么阴暗的,这样就好像别人都觉得你心里是阴暗的了,虽然同学看我操控别人的电脑,别人却浑然不知的时候,同学都说我很牛怎么的,但我总觉得那不是在夸我,我反到觉得那是在骂我.仿佛我和他们隔了什么东西似的,很难交心,虽然我那时候只是追求技术上面的提高...
但那都是以前的事情了,可以说我是由木马开始想到学习编程的,那时候我的梦想就是自己写一款木马,我觉得那是很牛的事情.可现在我不这么想了,学的东西多了,就越怕自己做出什么事出来,看了<<疯狂的程序员>>,觉得绝影的经历真的和我很像,我仿佛能看到,若干年后的我自己是否就会和绝影一样.钱这个东西很多人都扛不住的.我不知道我自己能不能扛住.我努力的去学法律,学着保护自己.也学着不要做违法的事情,想着牢里的生活,让人后怕.
可能很多人都认为写病毒或者木马的人都是心里面很阴暗的人,其实我不这样认为.技术都是两面的,有矛就盾,有攻就有防,就看你怎么把握了.我以后就想去杀毒软件公司,其实挺想去360的,以前就觉得木马才是很精巧的,是很有水平的人才能够做得出来的,所以和这样的人或者软件斗争,技术自然提高很快. 以前360没有上市的时候就想去,现在上市了,恐怕招人的条件就更高了,自己太业余,恐怕就难登大堂了.
现在只有继续努力的学习,力争达到目标. 好[了,废话扯多了!
说说软件没有加的那个功能吧,代码不给了,有一定的危险性(具体参见我<U盘偷窥者>里面的查找文件按的函数),原本弄一个LPK作为传播我们的木马的,姑且就叫它木马吧, LPK里面就实现一个功能,DllMain函数里面 判读我们进程里面有没有Main.exe 如果有的话,就什么都不做,没有的话就从我们的源头上面复制文件到C:\windows 下面然后执行Main.exe 下面给出我定义的几个宏,是关于文件存放的问题的
#define Title "Main.exe" //进程中显示的主程序 1 #define MainFile "C:\\Windows\\Main.exe" //主程序放的地方 2 #define ModuleName "mctxprx.dll" //我们注入的程序DLL 3 #define ModulePath "C:\\WINDOWS\\system32\\mctxprx.dll" //DLL放的地方 4 #define SourseDLLPath "C:\\WINDOWS\\system32\\drivers\\irenumtex.sys"//真正的DLL5放的地方(源头) #define SourseMainPath "C:\\WINDOWS\\system32\\drivers\\tcpt.sys" //真正主程序放的6源头 //备份的源头,防止上面的文件被删除 #define BackDLLPath "C:\\WINDOWS\\WinSxS\\Policies\\i386.policy"//备份的源头7 #define BackMainPath "C:\\WINDOWS\\WinSxS\\Manifests\\x86_Microsof.dll" 8
Main.exe 负责注入KernelSoft.dll到explorer.exe, 负责监视并写入注册表的开机启动,负责传播我们的LPk文件到没一个文件夹中,并设置只读,系统,隐藏文件属性,并修改文件时间(这个后来我删掉了,方便大家查找文件)
KernelSoft.dll的作用是监视Main.exe 并注入KernelSoft.dll 到winlogon.exe中.这里本可以用2个dLL来分别注入到explorer.exe和Winlogon.exe中的.为了方便就写一个了.
好了,思路就是这样了,代码我就不贴了,主要的代码参见我上次发表的文章(三线程防杀)
http://bbs.pediy.com/showthread.php?t=131537
其他的思路我也已经说了,你自己也可以尝试别的想法.要源码的可以找我.Email看过我文章的人都该知道的.
也写了这么多了,最近时间不是很多,就不再详细的写了.另外,本人长江大学大三了学生,想在暑假找份工作实习(关于编程开发方面或者是反病毒方面的),最好是能学习到很多东西的,本人学习能力很强,能吃苦,自学能力特强,地点最好是离武汉近点的地方.
另外,附上本人的特长吧:
1. 擅长 C,C++语言,会用VC++6.0在Win32平台下开发,没有什么工作经验,业余喜欢写点小程序.
2. 熟悉8086汇编和Win32下的汇编,能用OD调试分析程序,能破解简单的程序.
3. 熟悉单片机原理,能够为单片机开发出相应的程序
4. 常用开发环境 VC++6.0,C++builder,RadAsm, Keil7.0(单片机)
如果您有合适的机会,那么请联系我. 谢谢!
作者:liuqiangni
Email:181809575@qq.com