kali权限提升之配置不当提权与WCE
1.利用配置不当提权
2.WCE
3.其他提权
一、利用配置不当提权
与漏洞提权相比更常用的方法
在大部分企业环境下,会有相应的补丁更新策略,因此难以通过相应漏洞进行入侵。当入侵一台服务器后,无法照当相应的补丁进行提权,可通过寻找是否存在配置不当进行提权。如:代码中没有进行参数过滤等操作。
1.通过查看哪些服务默认以system权限启动,可尝试将其替换或绑定反弹shell程序
2.了解NTFS(文件系统)权限允许users修改删除本身,则可利用其配置不当,完成提权
3.命令行下快速查找当前系统下所有exe、con、ini执行程序的NTFS信息
3.1icacls #windows 2003以后的系统中包含的程序
icacls c:\windows\*.exe /save acl-exe /T #将 c:\windows 及其子目录下所有文件的exe文件保存到acl-exe文件,然后通过文本文件查找字符串FA;;;BU
3.2linux系统下查找权限设置不安全的程序
3.2.1查看/目录下文件权限为777的所有文件,并列出详细信息
find / -perm 777 -exec ls -l {} \;
3.2.2 find / -writable -type f 2>/dev/null |grep -v "/proc/"
二、WCE
Windows Credentials Editor (WCE)【windows身份验证信息编辑器】是一款功能强大的windows平台内网渗透工具。集成在kali的工具包的windows程序(/usr/share/wce) #从内存中读取LM、NTLM hash
作用:它可以列举登陆会话,并且可以添加、改变和删除相关凭据(例如:LM/NT hashes)。这些功能在内网渗透中能够被利用,例如,在windows平台上执行绕过hash或者从内存中获取NT/LM hashes(也可以从交互式登陆、服务、远程桌面连接中获取)以用于进一步的攻击。可以查看系统当前登陆用户的登陆密码的密文形式和明文形式。
要求:具有管理员权限
1.wce-universal.exe -l 查看当前登录账号的密码的密文形式的哈希值 因为是从内存中读取LM、NTLM hash,所以只能查看到已经登录的用户,未登录的用户查看不到
#计算机名也会被当作用户来处理
2.切换几个账号,然后测试
3.查看详细信息
wce-universal.exe -lv 下图的safe mode 安全模式 less-safe mode 是注入模式 #注入模式可能会对系统进程造成损坏
4.删除指定一个会话的LUID
wce-universal.exe -d
删除aaa用户的LUID.可以看到aaa的当前会话没有了
5.wce-universal.exe -r显示当前最新登录信息,5秒刷新一次,登录新的账户测试
6.wce-universal.exe -e 指定时间刷新
7.wce-universal.exe -g 对给出的数进行hash计算
8.wce-universal.exe -w以明文形式读取密码
9.修改登录会话,将bbb的登录会话修改成另一个用户账号
防御WCE攻击
系统通过Digest Authentication Package维护明文密码,默认自启动。可去注册表中关闭默认启动
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Security Packages
删掉最后一行wdigest,连换行符也不能留下
测试,可以看到在注册表中关闭维护明文密码之后,再次运行wce-universal.exe -w什么都获得不到,并且系统会自动重启(因为WCE默认先以安全模式运行,当安全模式不能运行,再开始尝试注入进程以便获得信息,但是注入模式可能会对系统进程造成损坏)
三、其它提权
python编写脚本提权
1.Python编写脚本增加一个s标志位,以root权限运行,然后别的用户执行/bin/dash就能拥有管理员的权限
2.切换到普通用户,然后运行/bin/dash,就可以看到普通用户拥有管理员的权限
Vim -c 提权
1.首先在/etc/sudoers文件中添加一句,然后以root权限运行python脚本
2.切换到普通用户,然后输入sudo vim -c ‘!sh’ 可以看到普通用户没有输入密码切换到root账户