渗透测试的常见术语
.POC, EXP, Payload, ShellCode
POC:
全称’Proof of Concept’ , 就是’概念验证‘ 常用来判断一个漏洞是否存在。
EXP:
全称’Exploit’ 就是利用 ,常常来对系统的漏洞进行攻击的动作或代码。
Payload:
全称:有效负荷,常常指在成功Exp后,真正在攻击中执行的代码指令。
Shellcode:
全称shell代码,是payload的一种 用于建立正向反向的shell
注意的是:
POC和Exp的不同:
Poc来证明漏洞的存在并没有危害,而Exp是利用漏洞来攻击,具有危害性,有了POC才有Exp
Payload
Payload由许多类,shellcode是Payload的一种。同一个Payload可以通用于多个Exp中,但是每个漏洞都有自己的Exp,在metasploit中的payload模块中 存在三种。single,stager,stages,single是一个all-in-one的payload,不依赖于其他文件,体积比较大,stager是先上传一个小的stager用来建立来连接,Stagers是指在上传完stager后下载后续的payload
Shellcode
有很多种类,正向的,反向的,meterpreter(DLL注入,不存在于磁盘中,存在于内存中)
一:攻击篇
1.攻击工具
肉鸡
所谓肉鸡是一种很形象的比喻,比喻那些可以被攻击者操纵摄像头,电脑,手机,服务器,或者其他的路由等设备,用于发动网络攻击
僵尸网络
僵尸网络Botnet是指采用一种或多种传播手段,将大量的主机感染病毒,从而在控制和被感染者之间形成一个一对多的控制关系
僵尸网络可以被攻击者执行恶意活动如DDOS,垃圾邮件等利用的基础设施
木马:
那些表面上伪装成正常的程序,但是这些程序运行时,会获取整个控制权限
网页木马:
表面上伪装成正常网页,或者将恶意代码直接插入正常网页中,当有人访问时,网页木马就会利用对方系统或者浏览器的漏洞,自动配置好木马服务端植入到对方访问者的电脑上来,自动执行将受影响的客户电脑变成肉鸡或者纳入僵尸网络
Rootkit
Rootkit是攻击者用来隐藏自己的行踪和保留root权限的访问权限的工具
通常攻击者先通过远程攻击的方式来获取一个低权限的系统的shell然后再通过对方系统的漏洞来获取root或者syste权限
然后在对方系统上安装一个Rootkit来达到长久控制的目的和木马和后门很像,然是需要隐蔽
蠕虫病毒
它是一类独立的恶意代码,使用了联网系统开放性的特点,可以通过远程的漏洞自主性的传播,受到控制终端会立马变成攻击者,尝试感染更多的系统
震网病毒
又叫Stuxnet病毒,是一个专门定向攻击真实世界的基础能源设备的蠕虫病毒,比如核电站,水坝,电网。
勒索病毒
主要以邮件,程序木马。网页挂马的形式进行传播,该病毒的性质恶劣,危害极大,一旦感染将会给用户带来无法估量的损失。这种病毒利用各种加密算法。对文件进行贾母,被感染者一般无法解密,需要拿到相对应的密钥才可以
挖矿木马
一种将PC,移动设备甚至服务器变成矿机的木马,通过挖矿团伙植入,用于挖取比特币从中获取利益
嗅探器
又叫Sniffer 能够捕获网络保温的设备或者程序,正当用法在于分析流量
恶意软件
被设计来达到非授权控制计算机或者窃取计算机数据的恶意行为的程序
间谍软件
一种能够在用户不知情的情况下,在其电脑上手机上安装后门,具备手机用户信息,监听,偷拍等功能的软件
后门
很形象的比喻,入侵者在利用某些方法时间控制目标系统后,在对方的系统上植入特定的程序,或者是修改某些设置,用于访问查看控制这些主机
弱口令
密码强度不够或易被猜解,admin 123456 admin123 admin888 114514 1919810等等,弱口令不一定强度不足,许多包含了大小写字母、数字、特殊符号的密码也是弱口令,如P@ssw0rd和一些键盘顺序密码如Q1w2e3r4、Q1A2Z3、987654321Qazxcvb等等。
FUZZ/Fuzzing
Fuzzing是模糊测试,顾名思义,意味着测试用例是不确定的、模糊的。它是一种类似于猜解、暴破的攻击方法,即例如猜解参数、接口、目录、文件等,通常使用该方法来找软件或系统的漏洞,目录扫描就是一种FUZZ,该方法甚至可以用来找0day。
漏洞
漏洞实在硬件,软件,协议的具体实现或者系统安全策略上存在的缺陷,从而可以被攻击者能够在未授权的情况下破坏系统
0day漏洞
早期的0day表示软件发行后在24小时被出现破解版本
如今在网络攻防中0day之那些攻击者发现并掌握开始使用的漏洞,并且还没有被包括受影响厂商的内的公众所知
1day漏洞
指信息漏洞公开,但仍然没有发布补丁的漏洞,此类漏洞的危害很高,往往厂商会关闭相应服务或者端口来避免
Nady漏洞
指已经发布过官方补丁,只需更新补丁就行了,但是由于种种原因,导致大量的设备未能更新补丁,由此漏洞再次被利用
远程命令执行漏洞
命令注入是一种漏洞,允许攻击者将操作系统命令直接注入应用程序并让它们执行(可以输入到 Bash 或 Powershell 终端的命令类型)。
远程命令执行是允许攻击者远程执行命令的漏洞的影响,但它不是漏洞本身。同样,该漏洞不一定是命令注入漏洞,它可能是导致攻击者能够执行命令的任何漏洞。
通常,如果漏洞允许远程代码执行,那么它也将允许远程命令执行,反之亦然。
远程代码执行漏洞
代码注入是一种允许攻击者将服务器端代码直接注入应用程序并使其执行的漏洞。例如,将 PHP、Python 或服务器端 JavaScript 注入 eval()。
RCE
RCE是一个通用术语,可以指远程代码执行或远程命令执行。换句话说,RCE 是允许攻击者远程执行代码和/或命令的漏洞的影响。注入是一种漏洞,执行是一种影响。
Command是一个 shell 命令,而code是某种类型的服务器端代码,而不是 shell 命令,例如 PHP就是一种服务器端代码。
RCE可互换使用,表示远程(代码|命令)执行。
挂马
在别人网站文件放入网页木马或者将潜入别人网页文件上,让浏览者中马
挖洞
漏洞挖掘
加壳
利用特殊的算法,将exe可执行文件或者DLL动态链接库文件的编码进行改变(比如实现压缩,加密),达到缩小文件体积或者加密程序的编码,甚至躲过杀毒软件的查杀,现在常用的壳由UPX,AsPack,Pepack等等
溢出
程序对输入的数据没有执行边界测试而导致错误,后果是程序崩溃或者执行攻击者命令
注入
Web安全头号大敌,攻击者把一些包含恶意代码的数据当作命令或者查询语句来发给解释器,来欺骗解释器,造成命令执行,sql注入等
软件脱壳
利用相关的工具,吧在软件外面其保护作用的壳程序给去除,还原软件本来面目,在修改文件内容进行分析检测就容易多了
免杀
就是通过加壳,加密,修改特征码,加花指令等技术绕过杀毒软件的查杀,杀毒软件的查杀模式有特征查杀和行为查杀两种,特征查杀好绕过,行为查杀难绕过。
暴力破解
对一个系统账号进行高度精密的密码探测,然后破坏安全
洪水攻击/洪泛攻击
是黑客常用的攻击技术,实现简单,威力巨大,大多数无视防御的
对网络资源发送过量的数据时就出现了洪水攻击,
DDOS是洪水攻击的一种
SYn攻击
利用tcp三次握手规则问题造成的拒绝服务攻击
DOS攻击
拒绝服务攻击,攻击者利用大量漏洞或者发送大量请求导致服务器不能正常访问
DDOS
分布式拒绝服务攻击,常见的UDP,SYN,反射放大工具等等,通过多太肉鸡一起发送网络请求,导致网络堵塞
抓鸡
设法控制电脑
端口扫描
通过发送一组请求来了解端口开放信息来服务信息
花指令
通过加入不影响程序的多余的汇编指令,是杀毒软件不能正常杀毒,来干扰病毒文件的结构
反弹端口
为了躲避防火墙,正向连接被阻挡,我们可以让被控主机主动来连接我们攻击机
网络钓鱼
黑客利用电子邮件胡总和伪造的Web站来进行网络欺诈活动,将自己伪装成银行,销售,政府等等人员获取被骗人的信息
鱼叉攻击
利用鱼叉捕鱼的形象,指可以是欺骗性的电子邮件看起来更可信,需要我们获取大量的信息来指定鱼叉
吊鲸攻击
是另一种鱼叉式钓鱼的网络攻击,它是指针对高级管理员或者组织进行网络钓鱼攻击,通常会指定当对应的计划
水坑攻击
在受害人的必经之路来设置一个陷阱,摸清他们上网规律
APT攻击
高级可持续化威胁攻击,指某组织在网络上对特定对象展开的持续有效的攻击活动
这种攻击具有极强的隐蔽性和针对性,通常会运用受感染的各种介质。供应链和社会工程学来实施先进的持久的有效的威胁和攻击
C2
命令和控制,常见于APT的攻击中
供应链攻击
是黑客攻击目标机构的合作伙伴,并且用这个合作伙伴作为跳板,达到目标
社工
这个更注重研究人性的弱点,依靠一篇的方式来得到一些信息
拿站
拿到一个网站的最高权限 得到管理员地账号密码
提权
指得到你本没有的权限。让普通用户成为管理员
横向移动
指攻击者入侵后,用该机器作为跳板入侵内网机器
黑页
用来黑客炫耀自己入侵成功
脱裤
黑客从数据库中导出数据
撞库
黑客通过手机互联网上用户的信息来制作成字典,批量尝试