危险漫步博客
新鲜的“黑客思维”就是从全新的角度看待黑客技术,从更高的层面去思考;专注于黑客精神及技术交流分享的独立博客。
文章2289 浏览19379035

另类后门轻松染过系统密码验证

最近一个朋友向我求助,他刚上班,公司还没给配电脑,只能蹭同事的电脑用用,不过电脑都有密码。我原本是想直接把密码给破了的,不过他说同事的密码会经常改。好吧,就做个后门吧。

一、后门构思

原本是想弄个粘滞键后门,想想还是算了,粘滞键后门太多人用了,还是弄点不常用的吧。找了半天,决定在辅助工具管理器上面下手(可按Win+U打开)。但是不能直接从它身上下手,辅助工具管理器里面有两个小工具,一个是放大镜(“magnigy.exe”),一个是屏幕键盘(“osk.exe”)。我的构思是这样的,将放大镜改名为“magnigyl.exe”,再把我们的后门复制到System32目录下,更名为“magnigy.exe”。当我们的后门打开时,检测NumLock灯是否亮起,再检测CapsLock灯是否亮起,最后检测ScrollLock灯是否亮起,如果是的话,添加一个用户,没有的话则删除特定的用户。

二、编程实现

编程语言选择VB,IDE是VB6.0.我们做这个后门需要用上API函数,什么是API函数呢?API说到底就是一系列的底层函数,是系统提供给用户用于进入操作系统核心,进行高级编程的途径。通过在Visual Basic应用程序中声明外部过程就能够访问Windows API(以及其它的外部DLLs)。在声明了过程之后,调用它的方法与调用Visual Basic自己的过程相同。

我们这里要用到的API函数就是GetKeyState函数,这个API函数的作用是查询某个键的当前状态,若我们查询的键处于按下状态则会返回1,不处于按—F蓑态则返回0。

在VB里调用API函数需要声明,声明很简单,只要在程序的声明处输入声明的代码就可以了,代码可以在网上找到。这里提供一本电子书,里面收录有常用的API函数,而且提供VB的声明代码。

打开VB6,新建”标准EXE工程”,在工程资源管理器中移除“Forml”,再添加一个模块。我们添加模块之后,在弹出的代码编辑框输入GetKeyState函数的声明代码。

好了,GetKeyState函数的声明工作我们已经完成了,接下来就是后门的代码编写。

“net1 user king king /add”的作用是添加一个账户名和密码都为king的账户,大家只需把“king”改成自己想要的就行了,还有后面的命令也要改哦。除此之外,Windows NT系统有WFP机制,即保护系统文件。这个机制很好突破,只需将我们的后门在复制到System32目录的同时,也复制一份到System32下的dllcache目录中,还有一点dllcache目录默认是隐藏的,需要展开我的电脑菜单“工具”→“文件夹选项”,切换到“查看”选项卡,在隐藏文件和文件夹那选择“显示所有文件和文件夹”。