2017-2018-2 20179306 《网络攻防技术》第八周作业
第八章 Linux操作系統安全攻防
1.1 Linux操作系統基本框架概述
1.1.1 Linux操作系統發展與現狀
? ? ?? 在統一內核代碼庫的基礎上,Linux開源社區根據不同用戶群體的需求,也發展出數量眾多的操作系統發行版,流行的包括Ubuntu、Debian、Fedora、CentOS、RHEL、OpenSUSE和Slackware等。Linux操作系統之所以會成為目前最受關注的系統之一,主要原因是它的開放源代碼與免費。
1.1.2 Linux的優勢
??????①跨平臺的硬件支持(Linux操作系統的內核大部分是用C語言編寫的,并采用了可移植的UNIX標準應用程序接口)
??????②豐富的軟件支持
??????③多用戶多任務(多個用戶可以在同一時間以網絡聯機的方式使用計算機系統)
??????④可靠的安全性(利用Linux自帶防火墻、入侵檢測和安全認證等工具,及時修補系統的漏洞,就能大大提高Linux系統的安全性)
??????⑤良好的穩定性(Linux內核源代碼是以標準規范的32位(在64位CPU上是64位)的計算機來做的最佳化設計,可確保其系統的穩定性)
??????⑥完善的網絡功能
1.1.3 Linux系統結構
? ? ?? 一套基于Linux內核的完整操作系統叫做Linux操作系統,Linux操作系統的結構包括Linux內核,一些GUN運行庫和工具,命令行Shell,圖形界面X窗口系統及相應桌面環境,并包含數千種從辦公包、編譯器、文本編輯器、科學工具到網絡服務的應用軟件。Linux操作系統內核的總體結構屬于一種典型的宏內核結構,并非Linux的前驅——Minix所采用的微內核結構。在Linux內核中,在硬件抽象層的各類設備驅動程序可以完全訪問硬件設備,方便地以模塊化形式設置,并在系統運行期間可直接通過LKM機制裝載或卸載。在硬件抽象層之上是內核服務功能模塊,包括進程管理、內存管理、文件系統、設備控制與網絡這五個子系統;而這些內核模塊通過系統調用接口向用戶態的GUN運行庫及工具、命令行Shell、X窗口以及應用軟件提供服務。
1.2 Linux操作系統安全機制
1.2.1 Linux操作系統的核心安全機制
??????身份認證、授權與訪問控制、安全審計。
1.2.2 Linux身份認證機制
??????Linux是一個多用戶多任務的操作系統,通過創建多種角色類型的用戶及用戶組來實施用戶身份管理,來確保多個用戶安全地使用Linux操作系統。
1.2.3 Linux用戶
??????在Linux系統中以用戶作為執行進程完成特定操作任務的主體:①Root根用戶②普通用戶③系統用戶。Linux用戶信息保存在系統的/etc/password文件中,具體包括用戶名、每個用戶唯一的uid、使用Shell類型、用戶初始目錄等,而加密口令字則存放于/etc/shadow文件中,只對Root可讀。
1.2.4 Linux用戶組
??????Linux用戶組其實就是具有相同特征的用戶賬號集合,用于簡化整個系統的用戶權限管理。Linux用戶組信息保存在系統的/etc/group文件中,包括用戶組名稱、用戶組gid及用戶組所包含的用戶名列表,用戶組加密口令字則保存在/etc/gshadow文件中。可以使用id-a命令來查詢和顯示當前用戶所屬組,并通過groupadd命令添加用戶組,使用usermod-G group_name user name向特定組來添加用戶。
1.3 Linux系統遠程攻防技術
1.3.1 遠程網絡上入侵Linux系統的主要方法
??????①對Linux系統各種網絡服務的身份認證過程所涉及的用戶口令字進行猜測攻擊
??????②發掘Linux系統某個監聽網絡服務的安全漏洞并進行利用,從而為攻擊者提供本地Shell的訪問權
??????③通過網頁木馬、發送欺詐郵件、提供特洛伊木馬程序等技術和社會工程學手段
??????④在Linux系統作為連接多個網絡的路由器,或者打開“混雜模式”實施網絡嗅探的監聽器時,可能遭受攻擊者特意構造的數據包攻擊,從而被攻擊者取得訪問權
1.3.2 自動化的遠程口令猜測工具
??????①Brutus:號稱最快最靈活的遠程口令猜測破解工具
??????②THC Hydra:非常快速的網絡身份認正口令猜測破解工具
??????③Cain and Abel:“黑界神兵”,對Linux下的SSH和各類網絡應用服務的遠程口令猜測也具有非常好的支持
1.3.3 Linux網絡服務遠程滲透攻擊
??????Linux系統安全漏洞、滲透攻擊與補丁更新過程 針對Linux系統網絡服務的遠程滲透攻擊 Linux內核中的網絡協議棧實現 LAMP Web網站構建解決方案中的網絡服務 FTP。Samba等文件共享服務 電子郵件收發服務 其他網絡服務
1.3.4 針對網絡服務遠程滲透攻擊的安全防范措施
??????①禁用所有不必要的網絡服務
??????②盡量選擇更安全的網絡協議與服務軟件,并使用最佳安全實踐進行部署
??????③及時更新網絡服務版本
??????④使用xinetd、防火墻為Linux網絡服務添加網絡訪問控制機制
??????⑤建立入侵檢測與應急響應計劃流程
1.4 Linux系統本地安全攻防技術
1.4.1 Linux本地特權提升
? ? ? 需要Root權限配置與管理系統時,通過su或者sudo命令提升至Root用戶帳戶。攻擊者在得到本地受限用戶訪問權之后,最簡單的特權提升途徑就是能夠破解出Root用戶的口令,然后執行su或者sudo命令進行提升。讀取口令字密文文件/etc/shadow本身就需要攻擊者具有Root特權。通過利用一些以Root特權運行服務中存在的文件任意讀/寫漏洞,攻擊者還是可以先獲取到/ect/shadow文件,然后通過破解口令字將自身權限提升至Root特權用戶。 第二種特權提升途徑是發掘并利用su或者sudo程序中的安全漏洞。攻擊者在Linux系統上進行本地特權提升目前最為流行的途徑是直接攻擊那些具有Root特權程序中的任意代碼執行漏洞,讓它們替攻擊者打開具有Root權限的Shell命令行連接。根據受攻擊目標程序的類型,這類途徑又分為攻擊用戶態SUID特權提升漏洞以及攻擊Linux內核代碼特權提升漏洞。在用戶態被設置了SUID位的網絡服務與程序,可以在運行過程中提升至文件擁有的權限,來執行一些系統資源相關的操作。 最后一種本地特權提升技術則利用了系統中的一些配置不當,通過從系統中搜索全局可寫的敏感文件與目錄位置并加以利用,僅擁有首先用戶權限的攻擊者可能讓操作系統或特權程序執行一些他們所預期的操作,從而獲得特權提升的機會。
1.4.2 Linux系統上的消蹤滅跡
? ? ? 清理系統日志,有效抹除掉自己的行動蹤跡。查看/etc/syslog.conf配置內容來了解系統當前正在實施的審計事件類型以及日志的存儲位置。還需清理在shell程序中所輸入的命令歷史記錄。
Kali視頻學習(31-35)
漏洞利用之SET
Social Engineering Toolkit(SET)是一個開源、Python驅動的社會工程學滲透測試工具。提供了非常豐富的攻擊向量庫。是開源的社會工程學利用套件,通常結合metasploit來使用。
輸入1,回車
1.魚叉式釣魚攻擊
2.網站攻擊
3.介質感染攻擊
4.創建Payload并監聽
5.群發郵件攻擊
6.基于Arduino的攻擊
7.短信欺騙攻擊
8.無線接入點攻擊
9.二維碼攻擊
10.powershell攻擊
11.第三方模塊
嗅探欺騙與中間人攻擊
Linux下的中間人攻擊套路是一樣的,這里介紹進行ARP欺騙、DNS欺騙和嗅探以及會話劫持的方法。
為Kali設置開啟端口轉發
設置ssltrip,讓sslrtip在8081端口監聽
ettercap的配置:配置文件是/etc/ettercap/etter.conf,首先要將ec_uid、ec_gid都變為0
將下面Linux分類下的if you use iptables這一行,將注釋去掉,保存退出
打開圖形化界面 ettercap -G
選擇嗅探網卡 默認eth0
打開ettercap,選擇sniff選項-unified sniffing-選擇網卡-hosts選項:先scan for hosts,等掃描完了選host list
權限維持之后門
權限維持包含Tunnel工具集、Web后門、系統后門三個子類。其中系統后門與Web后門統稱為后門,都是為滲透測試后,為方便再次進入系統而留下的惡意程序。
1、WEB后門
(1)Weevely
Weevely是一款使用python編寫的webshell工具(集webshell生成和連接于一身,僅限于安全學習教學之用,禁止非法用途),可以算作是linux下的一款菜刀替代工具(限于php),某些模塊在win上無法使用。
生成一個php后門,weevely generate test ~/1.php, test為密碼,在本地生成~/1.php
后門上傳到web,使用weevely連接
(2)WeBaCoo(Web Backdoor Cookie)script-kit
是一個小巧的、隱蔽的php后門,它提供了一個可以連接遠程web服務器并執行php代碼的終端。WebaCoo使用HTTP響應頭傳送命令結果,shell命令經base64編碼后隱藏在Cookie中。
2、系統后門
(1)Cymothoa系統后門
cymothoa -10500 -s -0 -y 2333 (注入2333端口),如果成功,可以連接2333端口返回一個shell
(2)dbd理解為加密版的nc
監聽端:dbd -l -p 2333 -e /bin/bash -k password
攻擊端:dbd 127.0.0.1 2333 -k password
(3)sbd和dbd用法相同
(4)U3-Pwn
與Metasploit Payload結合使用的工具,菜單可以單刀多針對移動光驅設備如光驅鏡像,u盤等。
(5)Intersect
執行后門,在目標機上執行 1.py -b,則生成一個bind shell后門,如果之前設置好remote host和remote port,也可以設置為reverse shell,此時連接后門端口成功,返回shell
權限維持之Tunnel
權限維持包括Tunnel工具集、web后門、系統后門三個子類。Tunnel工具集包含了一系列用于建立通信隧道、代理的工具:
(1)Miredo
Miredo是一個網絡工具,主要用于BSD和Linux的IPV6 Teredo隧道鏈接,可以轉換不支持IPV6的網絡連接IPV6,內核中需要有IPV6和TUN隧道支持。
(2)DNS2TCP
DNS tunnel即DNS通道。從名字上看就是利用DNS查詢過程建立起隧道,傳輸數據。
在酒店等公共場所,通常有wifi信號,但當訪問第一個網站時,可能會彈出窗口,需要輸入用戶名密碼,登陸后才可以繼續上網(該技術一般為透明http代理)。但有時會發現獲取到的dns地址是有效的,并且可以進行dns查詢,這時可以使用DNS tunnel技術來實現免費上網。
DNS tunnel原理
通過特定服務器,讓局域網內的DNS服務器為我們實現數據轉發。DNS tunnel實現的工具有很多,比如:OzymanDNS, tcp-over-dns, heyoks, iodine, dns2tcp
(3)iodine
(4)Proxychains
內網滲透測試經常會用到一款工具,如我們使用Meterpreter開設一個Socks4a代理服務,通過修改/etc/prosychains.conf配置文件,加入代理,即可使其他工具如sqlmap、namp直接使用代理掃描內網。
如proxychain namp 10.0.0.1/24
(5)Proxytunnel
Proxytunnel可以通過標準的Https代理來連接遠程服務器,這是一個代理,實現了橋接的功能。特別用于通過SSH進行Http(s)傳輸
Prosytunnel可用于:
使用http(s)代理(http connect 命令)創建通訊通道
為OpwnSSH寫一個客戶端驅動,并創建基于SSH連接的http(s)代理
作為一個獨立的應用,可以連接到遠程服務器
(6)Ptunnel
借助ICMP數據包建立隧道通信
(7)Pwant
內網下通過UDP通信
(8)sslh
一個ssl/ssh端口復用工具,sslh可以在同一個端口上接受https,ssh和openvpn連接。這使得通過443端口連接ssh服務器或者openvpn服務器同時在該端口上提供https服務成為可能。sslh可以作為一個研究端口復用的例子。
逆向工程工具
逆向工程是根據已有的東西和結果,通過分析來推導具體的實現方法。比如看到別人的某個exe程序能夠做出某種漂亮的動畫效果,可以通過反匯編、反編譯和動態跟蹤等方法,分析出其動畫效果的實現過程,這種行為就是逆向工程;不僅僅是反編譯,而且還要推倒出設計,并且文檔化,逆向軟件工程的目的是使軟件得以維護。
(1)Edb-Debugger
EDB(Evan's Debugger)是一個基于Qt4開發的二進制調試工具,主要是為了跟OllyDbg工具看齊,通過插件體系可以進行功能的擴充,當前只支持Linux
(2)Ollydbg
經典的Ring3級調試器,是一個動態調試工具,將IDA與SoftICE結合起來的思想。在Kali下是Wine方式運行的Ollydbg
(3)jad
Java反編譯工具
(4)Redare2
是一款開放源代碼的逆向工程平臺,它可以反匯編、調試、分析和操作二進制文件
(5)Recstudio2
一款反編譯工具
(6)Apktool
GOOGLE提供的APK編譯工具,能夠反編譯及回編譯apk,同時安裝反編譯系統apk所需要的framework-res框架,清理上次反編譯文件夾等功能
(7)Clang、Clang++
Clang是一個C語言、C++、Objective-C、Objective-C++語言的輕量級編譯器,類似于gcc編譯器
Clang++是clang的另一個升級版本,使用方法其實都是一樣的,類似于gc++編譯器
(8)D2j-des2jar
反匯編dex文件到jar文件,進而可以使用其他工具查看源代碼
(9)Flasm
主要用于直接修改swf文件里的腳本actionscript。swf轉fla文件的軟件不能確保100%還原,如果只是修改as腳本代碼,flasm是最佳的選擇,因為他只修改腳本,資源數據不做修改
轉載于:https://www.cnblogs.com/werr370/p/8969815.html
總結
以上是生活随笔為你收集整理的2017-2018-2 20179306 《网络攻防技术》第八周作业的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SystemVerilog之interf
- 下一篇: 12个“无用”之美,你有没有被惊艳到?