這篇文章主要介紹了用于提權(quán)的Linux命令是什么,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),濱海企業(yè)網(wǎng)站建設(shè),濱海品牌網(wǎng)站建設(shè),網(wǎng)站定制,濱海網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,濱海網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
xxd 介紹
我們知道如果想要將某個(gè)文件轉(zhuǎn)換成另一種格式,我們可以通過使用一些在線的轉(zhuǎn)換工具,它可以幫助我們將一個(gè)文件轉(zhuǎn)換成幾乎任何我們所需的文件格式,例如:“pdf to word,jpg to pdf,excel to pdf“等等。但如果有人想要將任意文件轉(zhuǎn)換為十六進(jìn)制或二進(jìn)制形式,那又該怎么辦呢?
其實(shí)這很簡單,在Linux上我們可以通過xxd這個(gè)命令來做到這一點(diǎn)。xxd命令可以為給定的標(biāo)準(zhǔn)輸入或者文件做一次十六進(jìn)制的輸出,它也可以將十六進(jìn)制輸出轉(zhuǎn)換為原來的二進(jìn)制格式。這也有助于對(duì)任意文件的編碼和解碼。
首先,讓我們使用help/man
命令,查看xxd
命令的具體使用方法。
xxd -h
使用 xxd 執(zhí)行的主要操作
將文件內(nèi)容轉(zhuǎn)換為十六進(jìn)制:例如,我創(chuàng)建了一個(gè)名為“secret.txt”的新文件,現(xiàn)在我想將其內(nèi)容都轉(zhuǎn)換為十六進(jìn)制形式,我可以通過鍵入以下命令執(zhí)行:
Syntax: xxd filename xxd secret.txt
如下圖所示,很明顯xxd已經(jīng)為文件“secret.txt”生成了十六進(jìn)制轉(zhuǎn)儲(chǔ)。
在這里我們可以觀察到,以下十六進(jìn)制轉(zhuǎn)儲(chǔ)獲得了它的默認(rèn)格式,例如:
索引行數(shù)
每組的默認(rèn)八位字節(jié)數(shù)為2,其分組大小為4字節(jié)
標(biāo)準(zhǔn)列長度為16位,帶有空格
使用xxd跳過第n行:在轉(zhuǎn)換文件時(shí),有許多數(shù)據(jù)可能是我們不需要的。因此,我們可以跳過這些內(nèi)容。我們可以使用xxd跳過第n行,并在跳過的行后生成十六進(jìn)制值。
假設(shè)在我當(dāng)前的情況下,我想要從第5行生成十六進(jìn)制轉(zhuǎn)儲(chǔ),那么可以通過使用“-s”參數(shù)后跟xxd命令來實(shí)現(xiàn)。
xxd -s 0x50 secret.txt
將輸出限制為特定長度:以上我已經(jīng)解釋了如何通過跳過行數(shù)來檢索數(shù)據(jù)。但是,如果你想要限制標(biāo)準(zhǔn)輸出的長度,那么你可以使用“-l”參數(shù)。
這里,我限制了我的內(nèi)容長度,以將數(shù)據(jù)打印到有限的范圍,即第5行,如下圖所示。
xxd -l 0x50 secret.txt
因此,我們可以觀察到兩個(gè)命令之間的差異;第一個(gè)命令生成從第6行初始化的十六進(jìn)制值,第二個(gè)命令根據(jù)十六進(jìn)制索引以第5行結(jié)束,請(qǐng)參考以上截圖。
將文件內(nèi)容轉(zhuǎn)換為二進(jìn)制文件:如果你想將文件轉(zhuǎn)換為二進(jìn)制形式,則可以使用“-b”選項(xiàng)。命令如下:
xxd -b secret.txt
設(shè)置列長:上面我已經(jīng)介紹了如何跳過并限制輸出到范圍,其實(shí)我們還可以設(shè)置列的長度。默認(rèn)情況下,對(duì)于任何轉(zhuǎn)儲(chǔ)文件它都是12, 16。
默認(rèn)值:我們知道默認(rèn)列長度為16。這將打印16個(gè)字符,包括空格。
xxd -l 0x20 secret.txt
將列長度設(shè)置為32:我使用“-l”選項(xiàng)設(shè)置了結(jié)束索引以限制打印數(shù)據(jù)的范圍。然后我使用“-c”參數(shù),將列的長度設(shè)為了32。
xxd -l 0x40 -c 32 secret.txt
從下圖中,我們可以知道xxd是如何限制列長度的。
將列長度設(shè)置為9:現(xiàn)在我們將列長度設(shè)置為“9”。
xxd -l 0x40 -c 9 secret.txt
在所有這些情況下,xxd都是通過空格計(jì)數(shù)每個(gè)字符來為文件創(chuàng)建十六進(jìn)制轉(zhuǎn)儲(chǔ)的。
純16進(jìn)制轉(zhuǎn)儲(chǔ):我們可以使用“-ps”選項(xiàng),以 postscript的連續(xù)16進(jìn)制轉(zhuǎn)儲(chǔ)輸出。這里我們將其輸出保存在hex文件中,以獲取secret.txt文件的純16進(jìn)制轉(zhuǎn)儲(chǔ)。為了驗(yàn)證結(jié)果,我們使用cat命令從hex文件中讀取輸出。
xxd -ps secret.txt > hex cat hex
從下圖中,我們可以知道xxd是如何為“secret.txt”文件,創(chuàng)建純十六進(jìn)制轉(zhuǎn)儲(chǔ)的。
還原文件:我們可以使用“-r”選項(xiàng),來還原轉(zhuǎn)換的文件內(nèi)容。在我們的例子中,我使用了“-r -p”將純十六進(jìn)制轉(zhuǎn)儲(chǔ)的反向輸出打印為了ASCII格式。
xxd -r -p hex
分組大小字節(jié):如果我們需要將輸出分組為多個(gè)八位字節(jié),那么我們可以使用“-g”選項(xiàng)來實(shí)現(xiàn)。默認(rèn)情況下為2。因此,如果我們將值設(shè)為4,那么它將被分組為8位。
在下圖中我們將值設(shè)為8,它將分組為16位作為輸出以簡化結(jié)果。
xxd -l 0x30 -g 8 secret.txt
SUID Lab 設(shè)置
SUID特殊權(quán)限是以命令的所有者權(quán)限來運(yùn)行這一命令的,而不是以執(zhí)行者的權(quán)限來運(yùn)行該命令?,F(xiàn)在,讓我們在xxd上啟用SUID權(quán)限,這樣本地用戶就有機(jī)會(huì)利用xxd來獲取root權(quán)限。
鍵入以下命令,啟用SUID位:
which xxd chmod u+s /usr/bin/xxd ls -al /usr/bin/xxd
SUID 利用
現(xiàn)在,我們將通過特殊權(quán)限位SUID來利用xxd服務(wù)。為此,我創(chuàng)建了一個(gè)受害者機(jī)器的會(huì)話,這將允許我們利用目標(biāo)系統(tǒng)的本地用戶訪問。
讓我們使用ssh連接到目標(biāo)機(jī)器,命令如下:
ssh test@192.168.1.103
成功訪問受害者機(jī)器后,我們使用find命令來查找具有SUID權(quán)限的二進(jìn)制文件。
find / -perm -u=s -type f 2>/dev/null
這里我們可以看到有許多二進(jìn)制文件具有SUID位,但我們重點(diǎn)關(guān)注/usr/bin/xxd。
在xxd上獲得特殊權(quán)限位SUID,我們將獲取用于提取密碼哈希文件的shadow文件。
如下圖所示,我已請(qǐng)求通過使用xxd暴露/etc/shadow文件,它將為該文件生成十六進(jìn)制轉(zhuǎn)儲(chǔ),并通過管道傳輸xxd命令來恢復(fù)其輸出。
xxd "/etc/shadow" / xxd -r
現(xiàn)在,我將使用john the ripper這款工具來破解哈希密碼。這樣我們就可以獲取用戶憑據(jù),如下圖所示。
john hash
獲取憑據(jù)后,我們就可以切換用戶了。首先,我們來檢查下用戶的sudo權(quán)限:raj,發(fā)現(xiàn)用戶“raj”具有所有權(quán)限。
su raj sudo -l sudo su
因此,讓我們直接切換到root用戶帳戶,并訪問root shell。至此,我們已成功利用xxd命令提升了我們的用戶權(quán)限。
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“用于提權(quán)的Linux命令是什么”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!
本文標(biāo)題:用于提權(quán)的Linux命令是什么
分享網(wǎng)址:http://www.rwnh.cn/article26/jgpgjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、網(wǎng)站內(nèi)鏈、營銷型網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)、企業(yè)建站、定制開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)