目录
在kali linux中启用主控端(windows7 为例)
漏洞复现-Adobe Flash Player 17 ActiveX
[漏洞复现]Adobe flash player 28(CVE-2018-4878)-CSDN博客
Netdiscover:
Netdiscover 是一个主动/被动的ARP 侦查工具。使用Netdiscover工具可以在网络上扫描IP地址,检查在线主机或搜索为它们发送的ARP请求。可以看出,此工具是来扫描内网的。
先查看自己IP地址,确定好网段
对网段进行扫描
然后要把网络适配器改成桥接模式,如果是Net模式,就会跟我一样,扫描出三个虚拟机
3.Hashcat密码破解
简介:
Hashcat是一款强大的密码p解工具,可以通过不同的攻击模式来p解各种加密算法(如MD5、SHA1\SHA256、MYSQL、PDF、ZIP等)的密码。主要用于破解hash值。
语法:
Hashcat -m 值 hash值 字典
介绍(以破解zip文件为例):
-m 值:表示想要破解的类型(eg:-m 13600破解winzip的文件(13600是WinZip的编号))
hash值:WinZip的hash值(每个软件都有自己固定的hash值)
查询方式:zip2john 1.zip
字典:从这里面进行枚举破解(kali中自带了一些字典,在wordlists中,找到rockyou.txt)
/usr/share/wordlists/rockyou.txt
演示:
1.现在windows界面创建一个文本文件,并压缩设置密码为1234rtyu(随便设置)
通过--help找到winzip编号
移动到kali中
查询hash值
提取字典
完整语法
4.Burpsuite暴力破解
下载安装bp
在此之前,先建立靶场,小编就在网上随便找了一个网站(不推荐)
靶场Metasploitable2-linux
1.复制网站到bp
2.按照步骤执行
第三章:被动扫描
在渗透前,我们要进行信息收集,这在我们后续渗透过程中,起着至关重要的作用,那么信息收集可以从哪些方面来着手呢?以目标a.test.com为例。
1.a.test.com所有者的信息,如姓名,地址,电话,电子邮件等;
2.a.test.com指向网站的DNS信息,是否使用了内容分发网络(CDN),网站应用级入侵防御系统(WAF)
3.test.com的子域名信息,如b.test.com,c.test.com就是和A.TEST.COM同属于相同域名test.com下的子域名。大多数情况下,这些网站会部署在同一网络中。
4.test.com相关的电子邮件
5.目标网站用户的社交信息,也就是该网站工作人员的微博,QQ等。
Maltego(情报收集工具)
介绍:可以通过域名注册,搜索引擎,社交网络,电子邮件的各种渠道搜集信息
下载安装后
sn0int
介绍:
1、从证书透明日志和被动 DNS 中获取子域名;
2、批量解析收集的子域名并扫描 http 或 https 服务;
3、使用 asn 和 geoip 信息丰富 ip 地址;
4、从 pgp 密钥服务器和 whois 中获取电子邮件;
5、发现违规行为中的受损登录信息;
6、在互联网上查找某人的个人资料;
7、使用被动 arp 等独特技术枚举本地网络;
8、收集有关电话号码的信息;
9、从社交媒体资料中收集活动和图像;
10、基本图像处理;
ZoomEye(6.26)
是一款专注于网络设备和物联网设备搜索的搜索引擎。它提供了一种通过互联网上的设备进行搜索的方式,使用户能够发现和分析各种连接到互联网的设备,包括服务器、路由器、摄像头、数据库等。ZoomEye 主要用于网络侦查、漏洞发现和网络安全研究。
whois命令介绍
通过对域名的检索, 可以反馈回域名的注册信息,包括持有人,管理资料以及技术联络资料, 也包括该域名的域名服务器。单从IP出发,基本上已经覆盖了所有基本信息。
语 法:whois[选择参数][必要参数]
例子:
范例1:显示指定用户信息
root@monkey:~# whois root
范例2:查询域名描述信息
root@monkey:~# whois baidu.com
范例3:查询域名信息
root@monkey:~# whois baidu.com
范例4:查询域名信息省略法律声明
root@monkey:~# whois -H baidu.com
范例5: 指定端口查询
root@monkey:~# whois -p 80 baidu.com
第四章:主动扫描
Nmap:(主动扫描)
简介
nmap是用来探测计算机网络上的主机和服务的一种安全扫描器。为了绘制网络拓扑图,Nmap的发送特制的数据包到目标主机,然后对返回数据包进行分析。Nmap是一款枚举和测试网络的强大工具。实际上扫描是nmap的主要功能。
功能
1.主机探测(是否在线,端口开放情况)
2.端口扫描(侦测运行的服务)
3.版本检测
4.支持探测脚本的编写
1.Nmap基本用法
1.对单台设备进行扫描
nmap 192.168.1.1
2.对IP地址不连续的多台设备进行扫描
nmap 192.168.1.1 192.168.1.100
3.对IP地址为连续范围内进行扫描
nmap192.168.1.1-100
4.对整个子网进行扫描
nmap 192.168.1.0/24
注:-sn(参数):只扫描是否在线,并表示出来
1.根据IP扫描操作系统
2.使用Nmap进行设备发现(是否在活跃状态)
在目前分层模型有两种,开放式系统互联通信参考(osi)和传输控制协议/网际协议(tcp/ip),本文采用的是tcp/ip协议。
应用层(端口号) | 负责处理特定的应用程序细节 |
传输层(tcp/udp) | 提供节点间的数据传输,应用程序之间的通信服务 |
网络层(Arp,Icmp) | 让每一块数据包都能到达目标设备 |
链路层 | 处理链接网络的硬件部分 |
2.1使用ARP进行设备发现(适于同一网段)
原理:如果我们想要知道处在同一网段的IP地址为x.x.x.x的设备是否为活跃设备,只需构建一个ARP请求报文,并广播出去,如果得到了回应,则说明该设备为活跃状态。
该技术的有点在于准确度高,任何处于同一网段的设备都没法防御这种技术,因为如果不遵守ARP,那么将意味着无法通信。
语法(通过wireshark查看)
nmap -sn -PR 192.168.1.1.0/24(-PR这个参数已经没了)
2.2使用icmp进行设备发现
icmp有差错和查询两类,nmap用的是查询报文,此又分为三类:
回送请求和回答(ping):测试两端的tcp/ip是否正常,能收到报文,就说明活跃。
时间戳请求和回答:允许一个系统向另一个系统询问当前时间
地址掩码请求和回答:icmp地址掩码请求用于无盘系统在引导过程中获取自己的子网掩码。
语法:
Nmap -PE ip地址---ping
Nmap -PP ip地址---时间戳
Nmap -PM ip地址---地址掩码
Nmap -Pn ip地址---进行ping扫描时,如果设备屏蔽了ping,扫描了没响应,则会直接结束整个过程,这个参数会扫描全过程
2.3使用tcp进行设备发现
三次握手:
第一次:客户端发送SYN数据包给服务端,进入SYN_SEND状态
第二次:服务端收到客户端的SYN数据包,回应一个ACK,进入SYN_RECV状态
第三次:客户端收到服务端的SYN数据包,回应一个ACK数据包,进入ESTABLISHED状态
通常第三次握手作用不大
2.3.1在Nmap中使用TCP进行设备发现
1.TCP SYN扫描
原理:
Nmap主机在发出SYN数据包之后,只要收到了数据包,无论是SYN+ACK数据包还是RST数据包(目标拒绝这次连接或端口没有开放),都意味着目标设备是活跃状态。
语法:
Nmap -sn -PS (端口号) ip地址
TCP扫描是Nmap扫描技术中最强大的扫描技术之一,很多服务器的安全机制都会屏蔽ICMP echo请求数据包,但是任何的服务器都会响应针对其服务的SYN数据包。
通常我们在利用端口扫描时,也可以使用组合形式,如“-PS22,80”
2.TCP ACK扫描
原理:
与SYN相似,不同之处在于Nmap发送的数据包中使用SYN+ACK标志位,而不是SYN标志位。
语法:
Nmap -sn -PA ip地址
注:在Nmap所在设备发出了数据包之后,并没有收到任何的回应,其实这时可能存在两种情况:一种情况是这个数据包被目标设备上的安全机制过滤了,所以目标设备根本没有收到这个数据包;另一种情况就是目标设备并非活跃状态设备。Nmap通常会按照第二种情况来进行判断,也就会得出一个错误的结论:目标设备并非活跃状态。
2.4使用Nmap扫描目标系统
目标设备的操作系统类型是一个十分重要的信息,如果我们知道了目标设备所使用的操作系统就可以大大减少工作量,这些工具在实际工作中,是通过向目标设备发送探针,然后根据目标设备的回应来猜测操作系统,这个探针大都以TCP,UDP数据包的形式,检查细节包括初始序列号,TOC选项,IP标识符,数字时间戳。每个操作系统都会对这些探针做出不同的响应,并将这些响应中的特征提取出来,大都在一个数据库中。
语法:
参数 | 意义 |
--osscan-limit | 只对满足“具有打开和关闭的端口”条件的设备进行操作系统扫描 |
--osscan-guess | 猜测认为最接近目标设备的操作系统类型 |
2.5将Nmap的扫描结果保存为XML文件
语法:
Nmap -oX Report.xml ip地址
2.6.对Web服务目录进行扫描Dirb
介绍:
dirb是一个基于字典的web目录扫描工具,查找现有的(和/或隐藏的)Web对象,通过对Web服务器发起基于字典的攻击并分析响应的数据。 采用递归的方式来获取更多的目录,它还支持代理和http认证限制访问的网站,是在信息收集阶段获取目标信息常用工具手段。
命令:
格式:dirb <url_base> [<wordlist_file(s)>] [options]
登录靶场
登录进去后是这样,每一个标题点进去都是一个文件
既然这样,渗透思路就可以是扫描一下他的目录
whatweb获取建站信息
第五章:漏洞扫描技术
复现笑脸漏洞
VSFTPD(Very Secure FTP Daemon)是一个常用的FTP服务器软件。 “vsftpd 2.3.4 Backdoor”(也称为 “vsFTPd 2.3.4 Backdoor” 或 “vsftpd v2.3.4 backdoor”)。该漏洞最初于2011年被公开发现,影响了VSFTPD 2.3.4版本。这个版本中的一个后门(backdoor)允许攻击者通过一个特殊的用户名和密码组合来获得未经授权的访问权限。这个后门的存在可能导致攻击者执行恶意操作,例如未经授权地访问和修改FTP服务器上的文件。
扫描靶机,发现靶机开放了21 ftp端口
使用nmap扫描FTP服务的版本信息
利用瑞士小军刀(netcat),连接靶机的21端口,输入user带有:),pass随便输入,注意:这里需要手动输入,此时靶机的6200端口开启,完成后请勿关闭此终端,保持下图的这个状态,不然6200端口也会随之关闭,随后另起一个终端,查看状态。
用nc连接6200端口,成功以root身份登入,漏洞复现完毕
也可以在漏洞信息库中查找相关字典
用nmap对漏洞进行扫描
就对笑脸漏洞检测
对nmap类进行扫描(过程比较慢)
这个扫描是对所有已开放的端口进行扫描
针对web漏洞扫描
需要使用工具zaproxy
ZAP页面除常规的菜单栏、工具栏外,陈列出捕获到的站点目录,为选中的某条数据的请求或响应报文(分页显示报文头和报文内容),实时展现捕获的数据流量,展示工具的执行状态以及警告的汇总。
检测这个页面是否有漏洞
扫描出这个界面存在的漏洞
第六章:远程控制
Msf payload creator
生成被控端
MSFvenom Payload Creator (MSFPC) 是一个基于Metasploit框架的msfvenom工具的封装脚本。它的主要目的是提供一个简单、快速的方法来生成各种基础的Meterpreter Payload。用户只需通过简单的输入选择,即可自动化生成所需的Payload,大大减少了手动操作的复杂性和时间成本。
可以生成木马文件的类型
生成linux反向控制木马(windows同理)
注:IP地址要写自己的,因为不知道谁会被你控制
进入主控端
kali linux生成控制端
操作系统 | 控制方式 | 模块具体名称 |
windows | /metetperter | /reverse_tcp |
在kali linux中启用主控端(windows7 为例)
连接数据库
Msfvenom提供的免杀方法
目前,杀毒软件提供了三种技术
基于文件扫描的反病毒技术
基于内存扫描的反病毒技术
基于行为监控的反病毒技术
三种免杀技术
修改特征码
添加花指令
程序加密
试验修改特征码
查看msfvenom支持的编码方式,一共7种类型
最常使用的编码方式就是x86/shikkata_ga_nai,官方对他的评级为excellent,我们使用一个评级为low的编码方式进行测试。
如果用x86/shikkata_ga_nai进行编码,每次生成的都会不一样,因此,生成的文件有时会被查杀,有时不会。
通过Web应用程序实现远程控制
Weevely
介绍
weevely是一款基于python编写的webshell管理工具,其优点是跨平台,隐蔽性不错,参数随机生成并加密。但缺点是只支持php。
我们可以在普通的一句话木马上传无效的情况下,使用weevley工具生成的一句话木马进行上传,实现在有IDS检测设备或者网站安全狗的企业网络场景下进行渗透测试,后门放置,文件管理,资源搜索,命令执行,系统信息收集等多种功能。
漏洞复现
背景:我们可以在这个界面上传木马
制造网页木马
拷贝到桌面
在靶机中上传文件
在浏览器中访问这个路径
在kali中执行远程操控
weevely http://192.168.156.136/dvwa/hackable/uploads/testweb.php 123456
测试,查看系统
第七章:渗透攻击
Metasploit
介绍
msf 是一款开源安全漏洞利用和测试工具,集成了各种平台上常见的溢出漏洞和流行的 shellcode,并持续保持更新
模块化架构
Metasploit 采用模块化设计,核心组件包括:
Exploits(漏洞利用模块):针对特定漏洞的攻击代码(如 EternalBlue、Heartbleed)。
Payloads(攻击载荷):漏洞利用成功后植入目标系统的代码(如反向 Shell、Meterpreter)。
Auxiliary(辅助模块):扫描、嗅探、拒绝服务等非直接攻击工具(如端口扫描、密码爆破)。
Post(后渗透模块):控制目标后进一步行动(如提权、窃取数据、横向移动)。
Encoders(编码器):绕过杀毒软件检测(如对 Payload 进行编码)。
NOPs(空指令):提高漏洞利用稳定性。
对操作系统发起攻击
漏洞复现---永恒之蓝
永恒之蓝是指2017年4月14日晚,黑客团体Shadow Brokers(影子经纪人)公布一大批网络攻击工具,其中包含“永恒之蓝”工具,“永恒之蓝”利用Windows系统的SMB漏洞可以获取系统最高权限。5月12日,不法分子通过改造“永恒之蓝”制作了wannacry勒索病毒,英国、俄罗斯、整个欧洲以及中国国内多个高校校内网、大型企业内网和政府机构专网中招,被勒索支付高额赎金才能解密恢复文件
查找MS17-010漏洞的渗透模块
对软件进行攻击
如果windows系统及时安装了补丁,我们就不能使用前面的方法直接渗透,但是操作系统不可能不用软件按,这章我们以简单文件共享HTTP服务器为例。
漏洞复现
EFS EFS Web Server 7.2版本中存在基于栈的缓冲区溢出漏洞。远程攻击者可通过向forum.ghp文件发送恶意的登录请求利用该漏洞执行任意代码。
Easy File Sharing Web Server在处理用户请求时存在输入验证漏洞,远程攻击者可能利用此漏洞获取敏感信息。Easy File Sharing Web Server在上传文件时没有正确地过滤某些参数,允许用户通过目录遍历攻击向任意父目录上传文件。
由于Easy File Sharing Web Server 6.9这个程序对输入的用户名长度不进行校验,存在缓冲区溢出漏洞,导致当用户输入太长的用户名导致缓冲区溢出,覆盖程序原本的返回地址,导致程序因跳转到非法地址奔溃或跳转到黑客控制的恶意代码地址进而导致服务器被黑客控制。
靶机上安装Easy File Sharing HTTP Server
小编因为虚拟机问题,完成不了后续的漏洞复现以及一些问题,会把自己学的博主推荐给大家
博主推荐
easy file sharing server-CSDN博客
使用Metasploit对客户端发起攻击
前面两节都是主动攻击,除此之外Matesploit中还提供了大量的被动攻击。被动攻击的思路很特殊,往往需要得到目标用户的配合才能成功。但在日常生活中,被动攻击的成功率往往比主动攻击的成功率要高
很多黑客入侵的案例往往是由于目标用户单机了恶意链接造成的。这些恶意链接的作用各不相同,如果目标用户使用的是存在漏洞的浏览器或者有漏洞的插件,就有可能导致整个系统控制权的‘沦陷’。Metasploit集成了大量针对各种浏览器和各种插件的攻击模块
利用浏览器插件漏洞进行攻击
漏洞复现-Adobe Flash Player 17 ActiveX
推荐博主
[漏洞复现]Adobe flash player 28(CVE-2018-4878)-CSDN博客
利用HTA文件进行渗透攻击
由于浏览器安全技术发展很快,很多时候黑客需要面对一些安全的浏览器,这时他们通常会选择一种不需要依赖漏洞的手段。通过这种手段看起阿来是一个正常的行为,如让访问伪造网站的受害者下载一个插件,借口往往是提高体验,或者正常显示一类的。但这个文件不能是EXE文件,这种很容易被发现,因此,HTML应用程序(HTA)文件成了最好的选择。
HTA文件可以使用HTML中的绝大多数标签,脚本。直接将HTML保存成HTA文件,就是一个能独立运行的软件。能够让你访问客户的计算机,而不用担心安全的限制。
需要用到Microsoft Office2010,利用其的漏洞CVE-2017-0199
推荐博主Kali 渗透测试:利用HTA文件进行渗透攻击_kali 渗透测试:利用hta文件进行渗透攻击-CSDN博客
Kali渗透测试:使用Word宏病毒进行渗透攻击_word宏进行攻击-CSDN博客
对Web应用攻击
推荐博主
Kali渗透测试:使用Metasploit对Web应用的攻击_metasploitable2 dvwa-CSDN博客
第八章:Armitage
Armitage就是一款使用JAVA为Metasploit编写的有图形化操作界面的软件,通过它可以轻松使用Metasploit中的各种模块来实现自动化攻击。
推荐博主
第九章:社会工程学工具
社会工程学是利用人的心理弱点、本能反应、好奇心、信任感、贪婪等情感因素,通过欺骗、诱导、胁迫等手段,操控人们放弃敏感信息、执行特定操作或破坏安全规程的一种攻击方法和技术。
利用人性弱点: 攻击者深谙心理学,善于利用:
信任: 冒充权威人士(IT部门、老板、警察、银行职员)、同事或朋友。
乐于助人: 利用人们助人的天性,请求“帮个小忙”。
恐惧: 制造紧迫感或恐慌(“您的账户已被入侵!”、“不立即操作将永久封号!”)。
贪婪/欲望: 提供诱人奖品、优惠或好处(“点击链接领取大奖!”)。
好奇: 利用对热点事件、八卦或“内部消息”的好奇心。
服从权威: 人们倾向于服从看起来有权力的人。
避免冲突/尴尬: 害怕质疑或拒绝他人,尤其是“权威”。
信息收集: 攻击前会进行大量信息收集(踩点),利用公开信息(社交媒体、公司网站、新闻报道)、垃圾搜寻、或之前的试探性交流,来了解目标、组织架构、流程、常用术语,使欺骗更逼真。
建立信任与关系: 攻击者往往花时间与目标建立某种联系或信任感(建立融洽关系),降低目标的警惕性。
操纵与欺骗: 精心设计场景和说辞(剧本),引导目标按照攻击者的意愿行动。
社会工程攻击的方式那可是五花八门
借口 (Pretexting):这是社会工程学的核心技能,就是“一本正经地胡说八道”。攻击者会伪装成各种身份,让你觉得他靠谱得像你亲大爷,然后心甘情愿地交出敏感信息。
诱饵 (Baiting):就像钓鱼一样,攻击者会抛出诱人的“鱼饵”,比如免费软件、优惠券之类的,引诱你上钩,然后窃取你的信息或者植入恶意软件。免费的往往是最贵的!
网络钓鱼 (Phishing):广撒网,多捞鱼!攻击者会群发邮件,希望有人不小心点击了恶意链接或者附件,然后乖乖地送上门。
鱼叉式网络钓鱼 (Spear Phishing):网络钓鱼的升级版!攻击者会针对特定目标,精心设计邮件内容,让你觉得这封邮件就是为你量身定制的,防不胜防。
鲸鱼网络钓鱼 (Whaling):鱼叉式网络钓鱼的VIP版!攻击对象是公司高管或者财务大佬,一旦成功,收益巨大!
语音钓鱼/电话钓鱼 (Vishing):通过电话或者短信进行诈骗,让你防不胜防。
商业电子邮件泄露 (BEC):攻击者入侵公司邮箱,冒充老板或者高管,让员工把钱转到他们的账户里。
网络欺骗 (Web Spoofing):在你的电脑或者服务器上植入代码,把你引诱到恶意网站。
尾随/捎带 (Tailgating):攻击者假装是员工,尾随你进入安全区域。
垃圾箱翻找 (Dumpster Diving):攻击者在你的垃圾桶里寻找有用的信息,比如废弃的文件、账单等等。