2017-2018-2 20179216 《网络攻防与实践》 第八周总结
課本內(nèi)容總結(jié)
一、Linux操作系統(tǒng)基本框架概述
Linux操作系統(tǒng)發(fā)展與現(xiàn)狀
在統(tǒng)一內(nèi)核代碼庫(kù)的基礎(chǔ)上,Linux開(kāi)源社區(qū)根據(jù)不同用戶群體的需求,也發(fā)展出數(shù)量眾多的操作系統(tǒng)發(fā)行版,流行的包括Ubuntu、Debian、Fedora、CentOS、RHEL、OpenSUSE和Slackware等。Linux操作系統(tǒng)之所以會(huì)成為目前最受關(guān)注的系統(tǒng)之一,主要原因是它的開(kāi)放源代碼與免費(fèi)。Linux的優(yōu)勢(shì)
(1)跨平臺(tái)的硬件支持(Linux操作系統(tǒng)的內(nèi)核大部分是用C語(yǔ)言編寫(xiě)的,并采用了可移植的UNIX標(biāo)準(zhǔn)應(yīng)用程序接口)
(2)豐富的軟件支持
(3)多用戶多任務(wù)(多個(gè)用戶可以在同一時(shí)間以網(wǎng)絡(luò)聯(lián)機(jī)的方式使用計(jì)算機(jī)系統(tǒng))
(4)可靠的安全性(利用Linux自帶防火墻、入侵檢測(cè)和安全認(rèn)證等工具,及時(shí)修補(bǔ)系統(tǒng)的漏洞,就能大大提高Linux系統(tǒng)的安全性)
(5)良好的穩(wěn)定性(Linux內(nèi)核源代碼是以標(biāo)準(zhǔn)規(guī)范的32位(在64位CPU上是64位)的計(jì)算機(jī)來(lái)做的最佳化設(shè)計(jì),可確保其系統(tǒng)的穩(wěn)定性)
(6)完善的網(wǎng)絡(luò)功能。Linux系統(tǒng)結(jié)構(gòu)
(1)Linux進(jìn)程與線程管理機(jī)制
(2)Linux內(nèi)存管理機(jī)制
(3)Linux文件系統(tǒng)管理機(jī)制
(4)Linux設(shè)備控制機(jī)制
(5)Linux網(wǎng)絡(luò)機(jī)制
(6)Linux系統(tǒng)調(diào)用機(jī)制
二、Linux操作系統(tǒng)安全機(jī)制
Linux操作系統(tǒng)的核心安全機(jī)制包括:身份認(rèn)證、授權(quán)與訪問(wèn)控制、安全審計(jì)
Linux身份認(rèn)證機(jī)制
(1)Linux用戶
(2)Linux用戶組
(3)Linux本地登錄用戶認(rèn)證機(jī)制
(4)Linux遠(yuǎn)程登錄用戶認(rèn)證機(jī)制
(5)Linux的統(tǒng)一身份認(rèn)證中間件-PAMLinux授權(quán)與訪問(wèn)控制機(jī)制
(1)文件所有者
(2)文件的訪問(wèn)權(quán)限
(3)文件的特殊執(zhí)行權(quán)限
(4)Linux訪問(wèn)控制機(jī)制的不足與改進(jìn)安全審計(jì)機(jī)制
三、Linux系統(tǒng)遠(yuǎn)程攻防技術(shù)
- 遠(yuǎn)程網(wǎng)絡(luò)上入侵Linux系統(tǒng)的主要方法
Linux遠(yuǎn)程口令字猜測(cè)攻擊
(1)Brutus:號(hào)稱最快最靈活的遠(yuǎn)程口令猜測(cè)破解工具
(2)THC Hydra:非常快速的網(wǎng)絡(luò)身份認(rèn)正口令猜測(cè)破解工具
(3)Cain and Abel:“黑界神兵”,對(duì)Linux下的SSH和各類(lèi)網(wǎng)絡(luò)應(yīng)用服務(wù)的遠(yuǎn)程口令猜測(cè)也具有非常好的支持。Linux網(wǎng)絡(luò)服務(wù)遠(yuǎn)程滲透攻擊
(1)Linux網(wǎng)絡(luò)服務(wù)的遠(yuǎn)程滲透攻擊
(2)Linux內(nèi)核中的網(wǎng)絡(luò)協(xié)議棧實(shí)現(xiàn)
(3)LAMP Web網(wǎng)站構(gòu)建解決方案中的網(wǎng)絡(luò)服務(wù)
(4)FTP、Samba等文件共享服務(wù)
(5)電子郵件收發(fā)服務(wù)
(6)其他網(wǎng)絡(luò)服務(wù)
(7)針對(duì)網(wǎng)絡(luò)服務(wù)遠(yuǎn)程滲透攻擊的安全方案措施- 攻擊Linux客戶端程序和用戶
- 攻擊Linux路由器和監(jiān)聽(tīng)器
Metasploit
- 針對(duì)網(wǎng)絡(luò)服務(wù)遠(yuǎn)程滲透攻擊的安全防范措施
(1)禁用所有不必要的網(wǎng)絡(luò)服務(wù)
(2)盡量選擇更安全的網(wǎng)絡(luò)協(xié)議與服務(wù)軟件,并使用最佳安全實(shí)踐進(jìn)行部署
(3)及時(shí)更新網(wǎng)絡(luò)服務(wù)版本
(4)使用xinetd、防火墻為L(zhǎng)inux網(wǎng)絡(luò)服務(wù)添加網(wǎng)絡(luò)訪問(wèn)控制機(jī)制
(5)建立入侵檢測(cè)與應(yīng)急響應(yīng)計(jì)劃流程
四、Linux系統(tǒng)本地安全攻防技術(shù)
Linux本地權(quán)限提升
(1)Linux用戶口令字破解
(2)利用sudo的缺陷進(jìn)行特權(quán)提升
(3)利用用戶態(tài)SUID程序漏洞進(jìn)行特權(quán)提升
(4)針對(duì)SUID程序的本地緩沖區(qū)溢出攻擊
(5)針對(duì)SUID程序的符號(hào)鏈接攻擊
(6)針對(duì)SUID程序的競(jìng)爭(zhēng)條件攻擊
(7)針對(duì)SUID程序的共享函數(shù)庫(kù)攻擊
(8)利用內(nèi)核空間代碼漏洞進(jìn)行特權(quán)提升
(9)利用系統(tǒng)配置不當(dāng)實(shí)施本地特權(quán)提升- Linux系統(tǒng)上的消蹤滅跡
系統(tǒng)遠(yuǎn)程控制后門(mén)程序
kali視頻(31-35)學(xué)習(xí)
Kali漏洞利用之SET
Social Enginnering Toolkit(SET)是一個(gè)開(kāi)源、Python驅(qū)動(dòng)的社會(huì)工程學(xué)滲透測(cè)試工具,提供了非常豐富的攻擊向量庫(kù)。是開(kāi)源的社會(huì)工程學(xué)套件,通常結(jié)合metasploit來(lái)使用。
輸入:setoolkit,打開(kāi)SET套件
菜單選項(xiàng):
1是社會(huì)工程學(xué)攻擊
2是Fast-Track滲透測(cè)試
3是第三方模塊- 輸入1,按回車(chē),有11個(gè)模塊。
選擇1:魚(yú)叉式釣魚(yú)攻擊
相應(yīng)的payload可以選擇不同的漏洞。
選擇2:網(wǎng)站攻擊框架。如果對(duì)方訪問(wèn)此頁(yè)面,若系統(tǒng)存在漏洞觸發(fā)條件,則會(huì)被植入后門(mén)。如Java Applet Attack 方法就需要目標(biāo)有Java運(yùn)行環(huán)境。為了仿真,可以選擇自建模版或克隆一個(gè)網(wǎng)站。
可以復(fù)制一個(gè)網(wǎng)站,借助內(nèi)網(wǎng)的嗅探欺騙把域名劫持過(guò)過(guò)來(lái)
選擇3:介質(zhì)感染攻擊
選擇4:創(chuàng)建Payload和監(jiān)聽(tīng)器,與Metasploit給出的Payload類(lèi)似
選擇5:短信欺騙攻擊,偽造短消息發(fā)送給別人,偽裝短信來(lái)源
KaliSecurity - 嗅探欺騙與中間人攻擊
Linux下的中間人攻擊套路是一樣的,這里介紹進(jìn)行ARP欺騙、DNS欺騙和嗅探以及會(huì)話劫持的方法。
1. 為Kali設(shè)置開(kāi)啟端口轉(zhuǎn)發(fā)
echo 1 > /proc/sys/net/ipv4/ip_forward cat /proc/sys/net/ipv4/ip_forward 修改為1
2. 設(shè)置ssltrip
為了劫持SSL數(shù)據(jù),需要https數(shù)據(jù)變?yōu)閔ttp: iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8081 讓sslrtip在8081端口監(jiān)聽(tīng): sslstrip -l 8081
將iptables這一行,注釋(“#”號(hào))去掉,打開(kāi)轉(zhuǎn)發(fā)。
3. ettercap的準(zhǔn)備
ettercap是一套用于中間人攻擊的工具。和dsniff套件齊名。支持插件和過(guò)濾腳本,直接將賬號(hào)、密碼顯示出來(lái),不用人工提取數(shù)據(jù)。如果是第一次中間人攻擊操作,那么要對(duì)kali下的etteracp做點(diǎn)配置。 配置文件是/etc/ettercap/etter.conf,首先要將ec_uid、ec_gid都變?yōu)?
打開(kāi)圖形化界面 ettercap -G 選擇嗅探網(wǎng)卡 默認(rèn)eth0
4. Ettercap使用
打開(kāi)ettercap,選擇sniff選項(xiàng)-unified sniffing-選擇網(wǎng)卡-hosts選項(xiàng),先scan for hosts,等掃描完了選host list。
5. Dsniff套裝介紹
Dsniff套裝主要是arpspoof和dsniff,前者用來(lái)進(jìn)行arp欺騙,后者用于嗅探。進(jìn)行攻擊步驟如下: 進(jìn)行arp欺騙: arpspoof [-i interface(網(wǎng)卡)] [-c own|host|both(欺騙方式,通常是both)] [-t target(目標(biāo))] [-r] host(網(wǎng)關(guān)) 進(jìn)行嗅探: dsniff [-cdmn] [-i interface | -p pcapfile] [-s snaplen] [-f services] [-t trigger[,...]] [-r|-w savefile] [expression] -c打開(kāi)半雙工TCP流,允許在使用arpspoof時(shí)進(jìn)行正確的嗅探操作; -d啟動(dòng)調(diào)試模式; -f以/etc/service格式從文件中加載觸發(fā)器(也就是口令嗅探的服務(wù)類(lèi)型); -I使用特定的網(wǎng)絡(luò)接口; -m使用dsniff.magic文件通過(guò)在magic文件中定義的特征嘗試自動(dòng)判斷協(xié)議; -n不執(zhí)行主機(jī)查找; -r從前面保存的會(huì)話中讀取被嗅探的數(shù)據(jù); -s最多對(duì)報(bào)文的前個(gè)字節(jié)進(jìn)行嗅探,如果用戶名和口令信息包含在隨后的默認(rèn)1024字節(jié)界限中; -t使用格式port/proto=servise;來(lái)加載一個(gè)以逗號(hào)界定的觸發(fā)器集;
6. 會(huì)話劫持
這里主要以cookies進(jìn)行舉例,說(shuō)明會(huì)話劫持的用法。 開(kāi)始arp欺騙; arpspoof -i wlan0 -t 192.168.1.1 192.168.1.102 捕獲數(shù)據(jù)報(bào): tcpdump -i wlan -w test.cap 等一段時(shí)間,估計(jì)目標(biāo)會(huì)登錄網(wǎng)站了,我們開(kāi)始處理捕獲的數(shù)據(jù)包: forret -r test.cap 如果捕獲的數(shù)據(jù)包沒(méi)什么問(wèn)題,而且確定開(kāi)啟了端口轉(zhuǎn)發(fā),那么經(jīng)過(guò)處理的數(shù)據(jù)包會(huì)自動(dòng)生成hamster.txt 接下來(lái)運(yùn)行hamster hamster 會(huì)提示瀏覽器設(shè)置代理為http://127.0.0.1:1234 接著在瀏覽器中代開(kāi)hamster: http://hamster 選擇目標(biāo)和可能的登錄認(rèn)證地址,然后點(diǎn)擊鏈接會(huì)發(fā)現(xiàn)劫持成功。
7. 圖片截獲
利用Driftnet這款工具我們可以看到受害人在訪問(wèn)網(wǎng)站的圖片。 首先依然使用arpspoof啟動(dòng)arp欺騙,然后啟動(dòng)driftnet: driftent -i 此時(shí)彈出一個(gè)小窗口,當(dāng)目標(biāo)訪問(wèn)有圖片的網(wǎng)站的時(shí)候,攻擊者就能在這個(gè)小窗口看到。
8. DNS欺騙
利用Dsniff套裝中的dnsspoof或者ettercap的dnsspoof插件,我們可以完成對(duì)受害者的dns欺騙。 在開(kāi)始欺騙前,首先我們要編輯一個(gè)自己的hosts文件,放在方便訪問(wèn)的地方。內(nèi)容和本機(jī)自帶的hosts內(nèi)容差不多,只是把你想欺騙的域名和想要欺騙到哪里的地址寫(xiě)好(通常是攻擊者指定的服務(wù)器,用來(lái)執(zhí)行瀏覽器溢出或者java applet攻擊,用來(lái)獲取受害者的計(jì)算機(jī)訪問(wèn)權(quán)限) host文件: 127.0.0.1 www.baidu.com 上面是一個(gè)hosts文件示例,把百度定向到了本機(jī)。我們把它保存成hosts,位于/root目錄下。 然后啟動(dòng)dnsspoof: dnsspoof -i wlan0 -f /root/hosts 等受害者訪問(wèn)百度觀察效果。
9. URL監(jiān)控
利用Dsniff套裝中的urlsnarf工具,我們對(duì)TCP80、3128、8080端口的HTTP通信進(jìn)行解析,并且可以將嗅探到的所有HTTP請(qǐng)求轉(zhuǎn)存為通用日志格式(Common Log Format,CLF),這種格式是許多Web服務(wù)器所使用的,例如IIS和Apache,事后可以很方便的使用一些日志分析工具來(lái)分析記錄結(jié)果。 Usage:urlsnarf [-n] [-i interface | -p pcapfile] [[-v] pattern [expression]] 10、下載軟件監(jiān)控 利用Dsniff套裝中的filesnarf工具,我們可以從嗅探到的NFS通信中,選定某個(gè)文件,轉(zhuǎn)存到本地當(dāng)前工作目錄。 Ussage:filesnarf [-i interface | -p pcapfile] [[-v] pattern [expression]]
KaliSecurity - 權(quán)限維持之后門(mén)
權(quán)限維持包含Tunnel工具集、Web后門(mén)、系統(tǒng)后門(mén)三個(gè)子類(lèi)。其中系統(tǒng)后門(mén)與Web后門(mén)統(tǒng)稱為后門(mén),都是為滲透測(cè)試后,為方便再次進(jìn)入系統(tǒng)而留下的惡意程序。
1. Weevely
是一款使用pythoon編寫(xiě)的webshell工具(集webshell生成和連接于一身,僅限于安全學(xué)習(xí)教學(xué)之用,禁止非法用途),可以算作是linux下的一款菜刀替代工具(限于php),某些模塊在win上無(wú)法使用。
** 2. WeBaCoo(Web Backdoor Cookie)**
script-kit是一個(gè)小巧的、隱蔽的php后門(mén),它提供了一個(gè)可以連接遠(yuǎn)程web服務(wù)器并執(zhí)行php代碼的終端。WebaCoo使用HTTP響應(yīng)頭傳送命令結(jié)果,shell命令經(jīng)base64編碼后隱藏在Cookie中。
webacoo連接: webacoo -t -u http://192.168.75.132/2.php 通過(guò)加入:執(zhí)行本地命令,不加則借助webshell執(zhí)行命令。
** 3. Cymothoa系統(tǒng)后門(mén)**
cymothoa -run 10500 -s -0 -y 2333 (注入2333端口),如果成功,可以連接2333端口返回一個(gè)shell
4. Intersect
列出可以使用的模塊
創(chuàng)建腳本
執(zhí)行后門(mén),在目標(biāo)機(jī)上執(zhí)行 1.py -b,則生成一個(gè)bind shell后門(mén),如果之前設(shè)置好remote host和remote port,也可以設(shè)置為reverse shell 此時(shí)連接后門(mén)端口成功,返回shell
Kali權(quán)限維持之Tunnel
權(quán)限維持包括Tunnel工具集、web后門(mén)、系統(tǒng)后門(mén)三個(gè)子類(lèi)。Tunnel工具集包含了一系列用于建立通信隧道、代理的工具:
- CryptCat Netcat大家都很熟悉了,有網(wǎng)絡(luò)工具中的瑞士軍刀之稱,但是它本身建立的隧道是不加密的,于是有了cryptcat。與dbd/sbd使用也類(lèi)似。
- DNS2TCP DNS tunnel即DNS通道。從名字上看就是利用DNS查詢過(guò)程建立起隧道,傳輸數(shù)據(jù)。 在酒店等公共場(chǎng)所,通常有wifi信號(hào),但當(dāng)訪問(wèn)第一個(gè)網(wǎng)站時(shí),可能會(huì)彈出窗口,需要輸入用戶名密碼,登陸后才可以繼續(xù)上網(wǎng)(該技術(shù)一般為透明http代理)。但有時(shí)會(huì)發(fā)現(xiàn)獲取到的dns地址是有效的,并且可以進(jìn)行dns查詢,這時(shí)可以使用DNS tunnel技術(shù)來(lái)實(shí)現(xiàn)免費(fèi)上網(wǎng)。 DNS tunnel原理 通過(guò)特定服務(wù)器,讓局域網(wǎng)內(nèi)的DNS服務(wù)器為我們實(shí)現(xiàn)數(shù)據(jù)轉(zhuǎn)發(fā)。DNS tunnel實(shí)現(xiàn)的工具有很多,比如:OzymanDNS, tcp-over-dns, heyoks, iodine, dns2tcp
- Iodine
- Miredo Miredo是一個(gè)網(wǎng)絡(luò)工具,主要用于BSD和Linux的IPV6 Teredo隧道轉(zhuǎn)換,可以轉(zhuǎn)換不支持IPV6的網(wǎng)絡(luò)連接IPV6,內(nèi)核中需要有IPV6和TUN隧道支持。
- Proxychains 內(nèi)網(wǎng)滲透測(cè)試經(jīng)常會(huì)用到一款工具,如我們使用Meterpreter開(kāi)設(shè)一個(gè)Socks4a代理服務(wù),通過(guò)修改/etc/prosychains.conf配置文件,加入代理,即可使其他工具如sqlmap、namp直接使用代理掃描內(nèi)網(wǎng)。 如proxychain namp 10.0.0.1/24
- Proxytunnel Proxytunnel可以通過(guò)標(biāo)準(zhǔn)的Https代理來(lái)連接遠(yuǎn)程服務(wù)器,這是一個(gè)代理,實(shí)現(xiàn)了橋接的功能。特別用于通過(guò)SSH進(jìn)行Http(s)傳輸 Prosytunnel可用于: 使用http(s)代理(http connect 命令)創(chuàng)建通訊通道 為OpwnSSH寫(xiě)一個(gè)客戶端驅(qū)動(dòng),并創(chuàng)建基于SSH連接的http(s)代理 作為一個(gè)獨(dú)立的應(yīng)用,可以連接到遠(yuǎn)程服務(wù)器
- Ptunnel 借助ICMP數(shù)據(jù)包建立隧道通信
- Pwant 內(nèi)網(wǎng)下通過(guò)UDP通信
- sslh 一個(gè)ssl/ssh端口復(fù)用工具,sslh可以在同一個(gè)端口上接受https,ssh和openvpn連接。這使得通過(guò)443端口連接ssh服務(wù)器或者openvpn服務(wù)器同時(shí)在該端口上提供https服務(wù)成為可能。sslh可以作為一個(gè)研究端口復(fù)用的例子。
Kali逆向工程工具
逆向工程是根據(jù)已有的東西和結(jié)果,通過(guò)分析來(lái)推導(dǎo)具體的實(shí)現(xiàn)方法。比如看到別人的某個(gè)exe程序能夠做出某種漂亮的動(dòng)畫(huà)效果,可以通過(guò)反匯編、反編譯和動(dòng)態(tài)跟蹤等方法,分析出其動(dòng)畫(huà)效果的實(shí)現(xiàn)過(guò)程,這種行為就是逆向工程;不僅僅是反編譯,而且還要推倒出設(shè)計(jì),并且文檔化,逆向軟件工程的目的是使軟件得以維護(hù)。
1. Edb-Debugger EDB(Evan's Debugger)
是一個(gè)基于Qt4開(kāi)發(fā)的二進(jìn)制調(diào)試工具,主要是為了跟OllyDbg工具看齊,通過(guò)插件體系可以進(jìn)行功能的擴(kuò)充,當(dāng)前只支持Linux。
2. Ollydbg
經(jīng)典的Ring3級(jí)調(diào)試器,是一個(gè)動(dòng)態(tài)調(diào)試工具,將IDA與SoftICE結(jié)合起來(lái)的思想。在Kali下是Wine方式運(yùn)行的Ollydbg。
3、jad
4、Redare2
5、Recstudio2
6、Apktool
7、Clang、Clang++
8、D2j-des2jar
9、Flasm
轉(zhuǎn)載于:https://www.cnblogs.com/jmjm/p/8921715.html
總結(jié)
以上是生活随笔為你收集整理的2017-2018-2 20179216 《网络攻防与实践》 第八周总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 9GAG客户端,五一3天尽心之作,Jus
- 下一篇: 定时任务调度及优化