20159320《网络攻防实践》第8周视频总结
kali漏洞利用之SET
1、开源、Python驱动的社会工程学渗透测试工具,更加丰富的攻击向量库(结合metaspolit)
2、命令行下输入setoolkit打开开SET套件
3、输入1(社会工程学)
鱼叉式钓鱼攻击、网站攻击、介质感染攻击、创建Payload并监听、群发邮件攻击、基于Arduino的攻击、短信欺骗攻击、无线接入点攻击、二维码攻击、powershell攻击、第三方模块
4、选择鱼叉式钓鱼攻击:目的:发送存在恶意软件的钓鱼邮件,相应的payload可以选择不同的漏洞。
5、网络攻击框架:开放webserver服务,若对方访问且存在系统漏洞则植入后门
6、 介质感染攻击:借助Autorun.inf执行Exploit得到一个返回shell,也可以结合Metasploit的后门
7、创建Payload和监听器
8、群发邮件攻击:支持导入列表并向列表中的每个人发送邮件
9、基于Arduino的攻击:硬件模块
10、短信欺骗:伪造短信发送
11、无线接入点攻击:无线接入点攻击会创建一个虚拟无线AP,通过接入点ap可以抓取所有连接进来的设备流量
12、二维码攻击:填入危险的url使被攻击者扫描二维码中招
13、powershell攻击:针对Vista以上的powershell攻击模块
14、fast-track攻击模块
kali嗅探欺骗与中间人攻击
1、为Kali设置开启端口转发
echo 1 > /proc/sys/net/ipv4/ip_forward
cat /proc/sys/net/ipv4/ip_forward
2、设置ssltrip:为了劫持SSL数据,需要https数据变为http:iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8081
让sslrtip在8081端口监听:sslstrip -l 8081
3、ettercap的准备:
ettercap是一套用于中间人攻击的工具。和dsniff套件齐名。支持插件和过滤脚本,直接将账号、密码显示出来,不用人工提取数据。如果是第一次中间人攻击操作,那么要对kali下的etteracp做点配置。
配置文件是/etc/ettercap/etter.conf,首先要将ec_uid、ec_gid都变为0
然后找到linux分类下的if you use iptables这一行,将注释(“#”号)去掉,打开转发
4、Ettercap使用:打开ettercap,选择sniff选项-unified sniffing-选择网卡-hosts选项:先scan for hosts,等扫描完了选host list
5、Dsniff套装介绍
Dsniff套装主要是arpspoof和dsniff,前者用来进行arp欺骗,后者用于嗅探。进行攻击步骤如下:
进行arp欺骗:arpspoof [-i interface(网卡)] [-c own|host|both(欺骗方式,通常是both)] [-t target(目标)] [-r] host(网关)
进行嗅探:dsniff [-cdmn] [-i interface | -p pcapfile] [-s snaplen] [-f services] [-t trigger[,...]] [-r|-w savefile] [expression]
6、会话劫持
这里主要以cookies进行举例,说明会话劫持的用法。
开始arp欺骗:arpspoof -i wlan0 -t 192.168.1.1 192.168.1.102
捕获数据报:tcpdump -i wlan -w test.cap
等一段时间,估计目标会登录网站了,我们开始处理捕获的数据包:
forret -r test.cap
如果捕获的数据包没什么问题,而且确定开启了端口转发,那么经过处理的数据包会自动生成hamster.txt
接下来运行hamster hamster会提示浏览器设置代理为http://127.0.0.1:1234
接着在浏览器中代开hamster:
http://hamster选择目标和可能的登录认证地址,然后点击链接会发现劫持成功。
7、图片截获
利用Driftnet这款工具我们可以看到受害人在访问网站的图片。
首先依然使用arpspoof启动arp欺骗,然后启动driftnet:driftent -i
此时弹出一个小窗口,当目标访问有图片的网站的时候,攻击者就能在这个小窗口看到
8、DNS欺骗
利用Dsniff套装中的dnsspoof或者ettercap的dnsspoof插件,我们可以完成对受害者的dns欺骗。
在开始欺骗前,首先我们要编辑一个自己的hosts文件,放在方便访问的地方。内容和本机自带的hosts内容差不多,只是把你想欺骗的域名和想要欺骗到哪里的地址写好(通常是攻击者指定的服务器,用来执行浏览器溢出或者java applet攻击,用来获取受害者的计算机访问权限)
host文件:127.0.0.1 www.baidu.com
上面是一个hosts文件示例,把百度定向到了本机。我们把它保存成hosts,位于/root目录下。
然后启动dnsspoof:dnsspoof -i wlan0 -f /root/hosts等受害者访问百度观察效果
9、URL监控
利用Dsniff套装中的urlsnarf工具,我们对TCP80、3128、8080端口的HTTP通信进行解析,并且可以将嗅探到的所有HTTP请求转存为通用日志格式(Common Log Format,CLF),这种格式是许多Web服务器所使用的,例如IIS和Apache,事后可以很方便的使用一些日志分析工具来分析记录结果。
10、下载软件监控
利用Dsniff套装中的filesnarf工具,我们可以从嗅探到的NFS通信中,选定某个文件,转存到本地当前工作目录。
kali权限维持
1、Tunnel工具集、Web后门、系统后门三个子类。其中系统后门与Web后门统称为后门
2、Weevely:pythoon、webshell工具,linux下菜刀替代工具(限于PHP)
生成一个后门、将后门上传到web使用weevely连接、可获得一个webshell
3、WeBaCoo:小巧、隐蔽的php后门,可提供一个可以连接远程web服务器并执行php代码的终端。WebaCoo使用HTTP响应头传送命令结果,shell命令经base64编码后隐藏在Cookie中。
生成一个webshell、上传到网站后用webacoo连接、通过加(可执行本地命令)、不加(借助webshell执行命令)
4、Cymothoa系统后门:
枚举/bin/bash.pid(ps aux | grep"/bin/bash -k password")
cymothoa -p 10500 -s -0 -y 2333 (注入2333端口),如果成功,可以连接2333端口返回一个shell
5、dbd/sbd:理解为加密版的nc
监听端:dbd -l -p 2333 -e /bin/bash -k password
攻击端:dbd 127.0.0.1 2333 -k password
6、U3-Pwn:针对移动光驱设备如光驱镜像,u盘等。
7、Intersect:创建脚本、加入模块、自由添加功能组件,生成一个shell
权限维持之Tunnel
1、Tunnel工具集包含了一系列用于建立通信隧道、代理的工具
2、CryptCat
Netcat大家都很熟悉了,有网络工具中的瑞士军刀之称,但是它本身建立的隧道是不加密的,于是有了cryptcat。与dbd/sbd使用也类似。
3、DNS2TCP:DNS tunnel即DNS通道。从名字上看就是利用DNS查询过程建立起隧道,传输数据。
在酒店等公共场所,通常有wifi信号,但当访问第一个网站时,可能会弹出窗口,需要输入用户名密码,登陆后才可以继续上网(该技术一般为透明http代理)。但有时会发现获取到的dns地址是有效的,并且可以进行dns查询,这时可以使用DNS tunnel技术来实现免费上网。
DNS tunnel原理
通过特定服务器,让局域网内的DNS服务器为我们实现数据转发。DNS tunnel实现的工具有很多,比如:OzymanDNS, tcp-over-dns, heyoks, iodine, dns2tcp
4、Iodine
5、Miredo:一个网络工具,主要用于BSD和Linux的IPV6 Teredo隧道转换,可以转换不支持IPV6的网络连接IPV6,内核中需要有IPV6和TUN隧道支持。
6、Proxychains:内网渗透测试经常会用到一款工具,如我们使用Meterpreter开设一个Socks4a代理服务,通过修改/etc/prosychains.conf配置文件,加入代理,即可使其他工具如sqlmap、namp直接使用代理扫描内网。
如proxychain namp 10.0.0.1/24
7、Proxytunnel:可以通过标准的Https代理来连接远程服务器,这是一个代理,实现了桥接的功能。特别用于通过SSH进行Http(s)传输
Prosytunnel可用于:使用http(s)代理(http connect 命令)创建通讯通道为OpwnSSH写一个客户端驱动,并创建基于SSH连接的http(s)代理
作为一个独立的应用,可以连接到远程服务器
8、Ptunnel:借助ICMP数据包建立隧道通信
9、Pwant:内网下通过UDP通信
10、Socat:可以在不同协议上进行转发数据
11、sslh:
一个ssl/ssh端口复用工具,sslh可以在同一个端口上接受https,ssh和openvpn连接。这使得通过443端口连接ssh服务器或者openvpn服务器同时在该端口上提供https服务成为可能。sslh可以作为一个研究端口复用的例子
Kali逆向工程工具
1、包括调试器、反编译工具与其他逆向工具集
2、Edb-Debugger:基于Qt4开发的二进制调试工具,主要是为了跟OllyDbg工具看齐,通过插件体系可以进行功能的扩充,当前只支持Linux
3、Ollydbg:经典的Ring3级调试器,是一个动态调试工具,将IDA与SoftICE结合起来的思想。在Kali下是Wine方式运行的OD
4、Jad:针对Java的反编译工具
5、Radare2:开放源代码的逆向工程平台,支持反汇编调试分析和操作二进制文件,包括rabin2、radiff2、rasm2等工具
6、Recstudio:读取windows、linux、mac os x或raw的可执行文件并尝试以c的方式呈现出代码和数据
7、Apktool:GOOGLE提供的APK编译工具,可反汇编或回编译apk,安装apk所需要的framework-res框架
8、clang、clang++:Clang是一个C语言、C++、Objective C++语言的轻量级编译器
9、D2j-dex2jar:反编译dex文件到jar文件,进而可以用其他工具查看源代码
10、flasm:直接修改swf文件里的脚本actionscript,swf转fla文件的软件不能确保100%还原,如果只是修改as脚本代码,flasm是最佳的选择,因为他只修改脚本,资源数据不做修改。目前flasm支持破解flash8和低于flash8格式的swf文件。
11、Javanoop:一个java应用程序安全测试工具,允许你以拦截的方法,篡改数据和hack运行在你计算机上的java应用程序。无源码无法测试。
允许你直接附加到一个运行中的进程,类似于调试器,然后,立即篡改方法调用、运行自定义代码或者仅仅监视在系统中发生了什么。