2017-2018-2 20179204《网络攻防实践》第六周学习总结
第1節(jié) 教材學(xué)習(xí)內(nèi)容總結(jié)
本周學(xué)習(xí)了教材第五、六章的內(nèi)容。
1.TCP/IP網(wǎng)絡(luò)協(xié)議攻擊
1.1 TCP/IP網(wǎng)絡(luò)協(xié)議棧攻擊概述
網(wǎng)絡(luò)安全屬性:機(jī)密性、完整性、可用性、真實(shí)性、不可抵賴性。
網(wǎng)絡(luò)攻擊模式:4種
| 被動(dòng)攻擊 | 截獲 | 機(jī)密性 | 嗅探、監(jiān)聽 |
| 主動(dòng)攻擊 | 篡改 | 完整性 | 數(shù)據(jù)包篡改、中間人攻擊 |
| 主動(dòng)攻擊 | 中斷 | 可用性 | 拒絕服務(wù) |
| 主動(dòng)攻擊 | 偽造 | 真實(shí)性 | 欺騙 |
- 安全缺陷與攻擊技術(shù)
- 原始報(bào)文偽造技術(shù)及工具
最流行的是欺騙技術(shù)——使用原始套接字(raw socket),繞過TCP/IP協(xié)議棧的報(bào)文封裝處理和驗(yàn)證,構(gòu)造出任意的數(shù)據(jù)報(bào)文。
工具包括netwox/netwag等。
1.2 網(wǎng)絡(luò)層協(xié)議攻擊
- ip源地址欺騙(ip spoofing)
原理:攻擊者偽造具有虛假源地址的ip數(shù)據(jù)包進(jìn)行發(fā)送,以達(dá)到隱藏發(fā)送者身份、假冒其他計(jì)算機(jī)等目的。常用于拒絕服務(wù)攻擊,nmap的-D選項(xiàng)就是用來(lái)配置假冒源IP地址的,操作見149頁(yè)。
原因:ip協(xié)議在設(shè)計(jì)時(shí)只是用數(shù)據(jù)包中的目標(biāo)地址進(jìn)行路由轉(zhuǎn)發(fā),而不對(duì)源地址進(jìn)行真實(shí)性的驗(yàn)證。
步驟:
1.對(duì)受信任主機(jī)進(jìn)行拒絕服務(wù)攻擊,使其喪失工作能力,避免在接收到響應(yīng)包之后影響欺騙過程;2.對(duì)目標(biāo)主機(jī)的TCP初始序列號(hào)(ISN)進(jìn)行取樣和猜測(cè);3.偽造源地址為受信任主機(jī)IP的SYN數(shù)據(jù)包,發(fā)送給目標(biāo)主機(jī);4.等待目標(biāo)主機(jī)將SYN/ACK包發(fā)送給已癱瘓的受信任主機(jī);5.再次偽裝成被信任主機(jī)向目標(biāo)主機(jī)發(fā)送ACK包;6.連接建立,假冒被信任主機(jī)與目標(biāo)主機(jī)進(jìn)行通信;防范:
1.隨機(jī)化初始序列;2.使用網(wǎng)絡(luò)安全傳輸協(xié)議(IPsec);3.避免基于IP地址信任策略;4.在路由器和網(wǎng)關(guān)上實(shí)施過濾包機(jī)制;"盲攻擊"的概念。
- ARP欺騙攻擊
概念:攻擊者在有線以太網(wǎng)或無(wú)線網(wǎng)絡(luò)上發(fā)送偽造ARP信息,對(duì)特定IP所對(duì)應(yīng)的MAC地址進(jìn)行假冒欺騙,從而達(dá)到惡意目的的攻擊技術(shù)。
ARP協(xié)議工作原理:將網(wǎng)絡(luò)主機(jī)的IP地址解析其MAC地址,然后在局域網(wǎng)內(nèi)通過MAC地址進(jìn)行通信。
ARP欺騙攻擊原理:認(rèn)為局域網(wǎng)內(nèi)的所有用戶都是可信的,是遵循協(xié)議規(guī)范的。
防范:靜態(tài)綁定關(guān)鍵主機(jī)IP地址和MAC地址映射關(guān)系、ARP防范工具、VLAN虛擬子網(wǎng)細(xì)分網(wǎng)絡(luò)拓?fù)?、加密傳輸?shù)據(jù)。
查找欺騙攻擊源工具:LANSEE、nbtscan、anti arp、sniffer。操作見154頁(yè)。
- ICMP路由重定向攻擊
概念:是指攻擊者偽裝成路由器發(fā)送虛假的ICMP路由路徑控制報(bào)文,使得受害主機(jī)選擇攻擊者制定的路由路徑,從而進(jìn)行嗅探或假冒攻擊的一種技術(shù)。
步驟:
1.攻擊節(jié)點(diǎn)利用ip源地址欺騙技術(shù),冒充網(wǎng)管ip地址,向被攻擊節(jié)點(diǎn)發(fā)送icmp重定向報(bào)文,并將制定的新路由器ip地址設(shè)置為攻擊節(jié)點(diǎn);2.被攻擊節(jié)點(diǎn)在接收到該報(bào)文后,會(huì)進(jìn)行限制條件檢查,由于該報(bào)文并不違背限制條件,因此會(huì)被接收,被攻擊節(jié)點(diǎn)選擇攻擊節(jié)點(diǎn)作為新路由器(即網(wǎng)關(guān));3.攻擊節(jié)點(diǎn)可以開啟路由轉(zhuǎn)發(fā),充當(dāng)一個(gè)中間人,對(duì)被攻擊節(jié)點(diǎn)與外部網(wǎng)絡(luò)的通信進(jìn)行全程嗅探監(jiān)聽,達(dá)到與arp欺騙蕾絲的攻擊效果;4.在轉(zhuǎn)發(fā)過程中,根據(jù)icmp路由重定向機(jī)制的設(shè)計(jì)原理,由于從被攻擊節(jié)點(diǎn)到外部網(wǎng)絡(luò)存在更優(yōu)的路由路徑,即直接通過原先的網(wǎng)關(guān)進(jìn)行路由較重定向后的路由路徑少一跳,因此攻擊節(jié)點(diǎn)協(xié)議??赡軙?huì)向被攻擊節(jié)點(diǎn)發(fā)送一個(gè)icmp重定向報(bào)文,指定原先網(wǎng)關(guān)作為新路由器,這個(gè)報(bào)文將使欺騙路由路徑還原至原先正常狀態(tài)。防范:根據(jù)類型過濾一些icmp數(shù)據(jù)包,設(shè)置防火墻過濾,對(duì)于icmp重定向報(bào)文判斷是不是來(lái)自本地路由器等。
操作見159頁(yè)。
1.3 傳輸層協(xié)議攻擊
- TCP RST攻擊
又稱為偽造TCP重置報(bào)文攻擊,假冒干擾TCCP通信連接的技術(shù)。TCP重置報(bào)文將直接關(guān)閉掉一個(gè)TCP會(huì)話連接。
- TCP會(huì)話劫持攻擊
目標(biāo)是劫持通信雙方已建立的TCP會(huì)話連接,假冒其中一方(通常是客戶端)的身份,與另一方進(jìn)行進(jìn)一步通信。為攻擊者提供了一種繞過應(yīng)用層身份認(rèn)證的技術(shù)途徑。
防范措施:禁用主機(jī)上的源路由;采用靜態(tài)綁定ip-mac映射表以避免arp欺騙;引用和過濾icmp重定向報(bào)文;采用網(wǎng)絡(luò)層加密機(jī)制,即ipsec協(xié)議是對(duì)抗tcp會(huì)話劫持攻擊最通用的辦法。
- TCP SYN洪泛拒絕服務(wù)攻擊
是目前比較有效而又非常難于防御的一種網(wǎng)絡(luò)攻擊方式,目的是使服務(wù)器不能夠?yàn)檎TL問的用戶提供服務(wù)。
TCP SYN Flood又稱泛洪攻擊,是目前最為有效和流行的一種拒絕服務(wù)攻擊形式,利用TCP三次握手協(xié)議的缺陷,向目標(biāo)主機(jī)發(fā)送大量的偽造源地址的SYN連接請(qǐng)求,消耗目標(biāo)主機(jī)的連接隊(duì)列資源,從而不能為正常用戶服務(wù)。
攻擊主機(jī)向受害主機(jī)發(fā)送大量偽造源地址的TCP SYN報(bào)文,受害主機(jī)分配必要的資源,然后向源地址返回SYN/ACK包,并等待源端返回ACK包。
利用Netwox進(jìn)行TCP SYN Flood攻擊。
SYN Flood攻擊防范措施:SYN-Cookie技術(shù)、防火墻地址狀態(tài)監(jiān)控技術(shù)
- UDP洪泛拒絕服務(wù)攻擊
向目標(biāo)主機(jī)和網(wǎng)絡(luò)發(fā)送大量UDP數(shù)據(jù)包,造成目標(biāo)主機(jī)顯著地計(jì)算負(fù)載提升,或者目標(biāo)網(wǎng)絡(luò)的網(wǎng)絡(luò)擁塞,從而使目標(biāo)主機(jī)和網(wǎng)絡(luò)陷入不可用的狀態(tài),造成拒絕服務(wù)攻擊。
TCP/IP網(wǎng)絡(luò)協(xié)議棧攻擊防范措施
檢測(cè)、預(yù)防與安全加固網(wǎng)絡(luò)安全協(xié)議下一代互聯(lián)網(wǎng)協(xié)議
第2節(jié) 課堂測(cè)試——sql注入實(shí)驗(yàn)
1.實(shí)驗(yàn)準(zhǔn)備
實(shí)驗(yàn)需要三樣?xùn)|西, Firefox、 apache、 phpBB2(鏡像中已有)。
- 運(yùn)行 Apache Server:鏡像已經(jīng)安裝,只需運(yùn)行命令 sudo service apache2 start
- phpBB2 web 應(yīng)用:鏡像已經(jīng)安裝,通過 http://www.sqllabmysqlphpbb.com 訪問,應(yīng)用程序源代碼位于/var/www/SQL/SQLLabMysqlPhpbb/
- 配置 DNS:上述的 URL 僅僅在鏡像內(nèi)部可以訪問,原因是我們修改了/etc/hosts文件使 http://www.sqllabmysqlphpbb.com 指向本機(jī) IP 127.0.0.1。如果需要在其他機(jī)器訪問,應(yīng)該修改 hosts 文件,使 URL 映射到 phpBB2 所在機(jī)器的 IP。
- 關(guān)閉對(duì)抗措施:PHP 提供了自動(dòng)對(duì)抗 SQL 注入的機(jī)制,被稱為 magic quote,我們需要關(guān)閉它。輸入命令sudo gedit /etc/php5/apache2/php.ini,將magic_quotes_gpc = On修改為magic_quotes_gpc = Off。 sudo service apache2 restart命令重啟 Apache。
2.對(duì)select語(yǔ)句的攻擊
首先訪問虛擬機(jī)內(nèi)的URL:www.sqllabmysqlphpbb.com。在進(jìn)入 phpBB之前系統(tǒng)會(huì)要求你登陸。這個(gè)登陸認(rèn)證由服務(wù)器上的 login.php 實(shí)現(xiàn),需要用戶輸入用戶名和密碼來(lái)通過認(rèn)證。用戶鍵入用戶名和密碼后,login.php 會(huì)將它們與 mysql 數(shù)據(jù)庫(kù)中的 username 和user_password 字段進(jìn)行比較,如果匹配就登陸主界面。和其他大多數(shù) web 應(yīng)用程序一樣,PHP程序使用 SQL 語(yǔ)言與背后的數(shù)據(jù)庫(kù)交互。在 phpBB2 中,下面的語(yǔ)句實(shí)現(xiàn)了對(duì)用戶的認(rèn)證。
SELECT user_id,username,user_password,user_active,user_level,user_login_tries,user_last_login_tryFROMUSERS_TABLEWHERE username=?$username?ANDuser_password=?md5($password)?;if(foundonerecord) then{allowtheusertologin}正常情況下,如果輸入錯(cuò)誤的用戶名或密碼,肯定是登錄不了的。但是對(duì)于有SQL注入漏洞的網(wǎng)站來(lái)說(shuō),只要構(gòu)造特殊的“字符串”,就能夠成功登錄。如在用戶名輸入框中輸入' or 1=1#,密碼隨便輸入,此時(shí)合成的SQL查詢語(yǔ)句為:select * from users where username='' or 1=1#' and password=md5('')。
“#”在mysql中是注釋符,這樣井號(hào)后面的內(nèi)容將被mysql視為注釋內(nèi)容,不會(huì)去執(zhí)行。即select * from users where username='' or 1=1#' and password=md5('')等價(jià)于select * from users where username='' or 1=1,因?yàn)?=1永遠(yuǎn)成立的,即where子句總是為真,該sql語(yǔ)句進(jìn)一步簡(jiǎn)化之后,等價(jià)于select * from users。
因此,這里我們輸入ted'#,就可以在不知道ted密碼的情況下登錄了。
3.對(duì) UPDATE 語(yǔ)句的攻擊
當(dāng)用戶想要在 phpBB2 中修改他們的資料時(shí),可以點(diǎn)擊 Profile,然后填寫表單修改。用戶發(fā)送修改請(qǐng)求后,會(huì)執(zhí)行include/usercp_register.php中的一條 UPDATE SQL 語(yǔ)句。在這條語(yǔ)句中同樣有一個(gè) SQL 注入漏洞。
下面演示以ted登陸,目標(biāo)是修改admin的資料信息,包括他的密碼。攻擊成功后將可以登陸 Ted 的賬號(hào)。
點(diǎn)擊Memberlist查看admin的信息,可以看到一個(gè)帶參數(shù)的腳本,猜測(cè)admin的id為2。
- 我們?cè)僭趇nterests欄中輸入1234'where user_id=2#,即將update語(yǔ)句中interests后的語(yǔ)句全部注釋掉,并將where條件設(shè)置成admin的id。
- 再次點(diǎn)擊Memberlist查看admin的信息,可以看到admin的interests改為1234。
Current password里輸入ted密碼(ted),New password里輸入1,即可將admin的密碼修改為1了。
4.對(duì)抗sql注入
- 使用magic_quotes_gpc避開特殊字符。修改/etc/php5/apache2/php.ini的magic_quotes_gpc = On,然后重啟Apache。
- 使用addslashes()來(lái)避開特殊字符
使用mysql_real_escape_string避開特殊字符
第3節(jié) kali視頻(21-25)學(xué)習(xí)
21.密碼攻擊之在線攻擊工具
- Cewl
爬行網(wǎng)站獲取關(guān)鍵信息創(chuàng)建密碼字典。
- CAT
很小的安全審計(jì)工具,掃描Cisco路由器的一般性漏洞:例如默認(rèn)密碼,SNMP community字串和一些老的IOS bug。
- Findmyhash
在線哈希破解工具,借助在線破解哈希網(wǎng)站的借口制作的工具。并不如國(guó)內(nèi)的cmd5好用。
- 老牌破解工具HYDRA
破解單一用戶則使用小寫l,若要拆分用戶則用大寫L;同理若固定一個(gè)密碼使用寫小寫p,一個(gè)文件則使用大寫P。
使用參數(shù)簡(jiǎn)單易懂:
破解FTP服務(wù):hydra -L user.txt -F ftp://127.0.0.1:21破解SSH服務(wù):hydra -L user.txt -F ssh://127.0.0.1:22SMB:hydra -L user.txt -F ssh://127.0.0.1破解MSSQL賬號(hào)密碼:hydra -L user.txt -F ssh://127.0.0.1:1433猜解到用戶名和密碼可看到高亮顯示。
service ssh status判斷ssh服務(wù)是否打開
使用指令打開ssh服務(wù)
1.修改sshd_config文件,命令為:vi /etc/ssh/sshd_config2.將#PasswordAuthentication no的注釋去掉,并且將NO修改為YES //我的kali中默認(rèn)是yes3.將#PermitRootLogin yes的注釋去掉 //我的kali中默認(rèn)去掉了注釋4.啟動(dòng)SSH服務(wù),命令為:/etc/init.d/ssh start // 或者service ssh start
hydra -l root -P -/pass.txt -F ssh://192.168.75.33:22 錯(cuò)誤,沒有密碼表文件。
hydra-gtk圖形化界面
Medusa
Medusa類似于Hydra的一款工具,使用方法類似。
Medusa -h 192.168.235.96 -u root -P //wordlists rockyou.txt -M ssh //-h 目標(biāo)IP地址
選擇不同服務(wù)只要修改-M后面的參數(shù)即可。
- NcRACK
NcRACK 相似的功能基本類似,但突出了RDP(3389)爆破功能,如使用命令:
ncrack -vv windows.pwd 192.168.1.101:3389,CL=1 -f
- onesixtyone
onesixtyone是一個(gè)snmp掃描工具,用于找出設(shè)備上的SNMP Comunity字串,掃描速度非???。
- Patator
Patator是一款Python編寫的多服務(wù)破解工具,如枚舉一個(gè)服務(wù)用戶名密碼。
Patator ssh_login host=127.0.0.1 user=root password=FILE0 0=pass.txt -x ignore:mesg='Authenticaton failed.'
phrasen|drescher
phrasen|drescher多線程支持插件式的密碼破解工具THC-PPTP-Bruter
22.密碼攻擊之離線攻擊工具(一)
- creddump套件
Kali linux下離線攻擊工具中的cache-dump、lsadump與pwdump均為creddump套件的一部分,基于python的哈希抓取工具。
- Chntpw
用來(lái)修改Window SAM文件實(shí)現(xiàn)系統(tǒng)密碼修改、清除,亦可在kali作為啟動(dòng)盤時(shí)作刪除密碼的的用途。
- Crunch
實(shí)用的密碼字典生成工具,可以指定位數(shù)生成暴力枚舉字典。
- Dictstat(新版改名為pack)
是一款字典分析工具,可以分析出一個(gè)現(xiàn)有字典分布情況,也可按照一定的過濾器提取字典。同一項(xiàng)目下的工具還有MaskGen與PolicyGEN。
- Fcrackzip
kali下一款ZIP壓縮包密碼破解工具。
- Hashcat
強(qiáng)大的密碼破解軟件,系列軟件包含Hashcat,oclHashcat,還有一個(gè)單獨(dú)新出的oclRausscrack,其區(qū)別為Hashcat不支持GPU加速,oclGausscrack則支持GPU加速,速度顯而易見,oclHashcat則分為AMD版和NAVID版。
- Hashid
簡(jiǎn)單易用的哈希分析工具,可以判斷哈?;蚬N募呛畏N哈希算法加密的。
- HashIdentify
是一款Hashid類似的一款工具。
- John the ripper
老牌密碼破解工具,常用于Linux shadow中賬戶的密碼破解,社區(qū)版也支持MD5-raw等哈希的破解。有圖形化版johnny。
圖形化版本:
23.密碼攻擊之離線攻擊工具(二)
- Ophcrack
彩虹表(是一個(gè)用于加密散列函數(shù)逆運(yùn)算的預(yù)先計(jì)算好的表)Windows密碼哈希破解工具,對(duì)應(yīng)有命令行版的ophcrack-cli。
- pyrit
是一款無(wú)線網(wǎng)絡(luò)密碼破解工具,借助GPU加速,可以讓W(xué)PA2密碼破解更效率。
- Rcrack
彩虹表密碼哈希工具,使用了第一代彩虹表(RT格式),當(dāng)然首先,我們要有足夠容量的彩虹表,使用很簡(jiǎn)單,按照參數(shù)破解即可。
- rcracki_mt
又一款彩虹表哈希破解工具,不同的是此工具支持最新格式的彩虹表進(jìn)行哈希破解。當(dāng)然,彩虹表仍然是不可缺少的關(guān)鍵存在。
- rsmangler
字典處理工具,可以生成幾個(gè)字串的所有可能組合形式,在生成社工字典時(shí)亦可用到。可以有選擇性的關(guān)閉某些選項(xiàng)。
- Samdump2與BKhive
- SIPCrack
SIPCrack是針對(duì)SIP protocol協(xié)議數(shù)據(jù)包的破解工具,支持PCAP數(shù)據(jù)包與字典破解。
- SUCrack
使用su命令進(jìn)行本地root賬戶的密碼破解。
- Truecrack
一款針對(duì)TrueCrypt加密文件的密碼破解工具。
24.密碼攻擊之哈希傳遞攻擊
在Windows系統(tǒng)中,用戶口令都是以哈希值的方式存儲(chǔ),在我們遠(yuǎn)程登錄系統(tǒng)的時(shí)候,實(shí)際上向遠(yuǎn)程傳輸?shù)木褪敲艽a的hash,當(dāng)攻擊者獲取了存儲(chǔ)在計(jì)算機(jī)上的用戶名和密碼的hash值的時(shí)候,他雖然不知道密碼值,但是仍然可以通過直連遠(yuǎn)程主機(jī),通過傳送密碼的hash值來(lái)達(dá)到登陸的目的。
- PTH套件
要進(jìn)行哈希傳遞攻擊,首先我們要有目標(biāo)主機(jī)的哈希信息,以Pwdump7抓取hash為例,pth套件每個(gè)工具都針對(duì)win下響應(yīng)的exe文件,如使用pth-winexe可以借助哈希執(zhí)行程序得到一個(gè)cmdshell。
- Keimpx
一款Python編寫的哈希傳遞工具,通過已有哈希信息get一個(gè)后門shell。
使用PWDUMP7抓取哈希,將文件保存至根目錄,使用keimpx的-c參數(shù)作為文件憑據(jù)。
檢測(cè)到Adminstrator可以進(jìn)行哈希傳遞攻擊,是否獲得shell。
得到shell的端口號(hào),如2090,可以nc 2090獲得shell。
- Metasploit
模塊exploit/windows/smb/psexec亦可完成HAsh傳遞攻擊。
25.無(wú)線安全分析工具
Kali無(wú)線安全分析工具包括RFID/NFC工具集,軟件定義無(wú)線工具,藍(lán)牙Hack工具與常規(guī)無(wú)線網(wǎng)絡(luò)分析工具。
- Aircrack
是一個(gè)與802.11標(biāo)準(zhǔn)的無(wú)線網(wǎng)絡(luò)分析有關(guān)的安全軟件,主要功能:網(wǎng)絡(luò)偵測(cè),數(shù)據(jù)包嗅探,WEP和WPA/WPA2-PSK破解,Aircrack-ng可以工作在任何支持監(jiān)聽模式的無(wú)線網(wǎng)卡上并嗅探802.11a,802.11b,802.11g的數(shù)據(jù)。該程序可運(yùn)行在Linux和Windows上,Linux版本已經(jīng)被移植到了Zaurus和Maemo平臺(tái)上。
- Cowpatty
一款知名的WPA-PSK握手包密碼破解工具。
- eapmd5pass
針對(duì)EAP-MD5的密碼破解工具。
- 圖形化的Fern WiFi Cracker
無(wú)線網(wǎng)絡(luò)分析中如果要使用虛擬機(jī)中的kali Linux,則需要外置無(wú)線網(wǎng)卡。
- MDK3
是一款無(wú)線DOS攻擊測(cè)試工具,能夠發(fā)起B(yǎng)eacon Flood、Authentication DoS、Deauthentication/Disassociation Amok 等模式的攻擊。另外還有其他針對(duì)隱藏ESSID的暴力探測(cè)模式,802.1x滲透測(cè)試,WIDS干擾等功能。
- wifite
自動(dòng)化的無(wú)線網(wǎng)審計(jì)工具,可以自動(dòng)化破解,Python腳本編寫,結(jié)合Aircrack-ng套件與Reaver工具。
- Reaver
對(duì)開啟WPS的路由器PIN碼進(jìn)行破解。
轉(zhuǎn)載于:https://www.cnblogs.com/20179204gege/p/8846792.html
總結(jié)
以上是生活随笔為你收集整理的2017-2018-2 20179204《网络攻防实践》第六周学习总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端开发:自定义搜索框(含联想搜索)
- 下一篇: 中国大学moocpython程序设计答案