0%

本地提权

kali安装VM_TOOLS

最新版本需要执行:sudo apt-get install open-vm-tools-desktop fuse才可以。

操作系统用户

  1. Windows
    1. user:普通的用户
    2. administrator:超级管理员
    3. system:内核级管理员
    4. administrator包含user功能,system包含administrator和user的大部分功能
    5. Guest是最小的权限
  2. Linux
    1. user:普通用户
    2. root:超级管理员
    3. root级别最大,可以掌控所有

Windows下的administrator到system

XP:使用命令:at 11:24 /interactive cmd
意思就是在11:24分启动一个交互的cmd,权限是system,因为at命令是由system权限的。
adtosys
再次之后在这个cmd启动的都是system权限,然后使用taskmgr打开进程管理器,杀死explore进程,然后再用system启动explore进程,那么系统就会进入system权限了。

win7/win8:at已经没了,sc命令:
sc Create syscmd binPath="cmd /K start" type=own type=interactive
sc start syscmd
服务都是system进行启动。
第一句是创建一个名称为syscmd的服务,这个服务是启动一个可以交互的命令行。
第二条是启动这个服务。

微软提供了些提权的套件。

注入进程提权:就是注入已经启动了的System进程,然后获取CMD。
一般提供一个端口就是我们可以使用nc连接的。
优点是因为注入所以不会被管理员通过进程发现异常。

常用方法

  1. 通过数据包的抓取嗅探,可以获得更多账号的账号密码。
  2. 通过键盘记录器。
  3. 本地缓存密码(浏览器的密码记录,远程登陆凭证,无线wifi密码)
  4. PwDump(kali带着),支持查看远程的加密密码,现在这些Windows的工具都存放在/usr/share/windows-binaries下面了
  5. Windows登录的密码是在C盘下的Windows下的system32下的config下的SAM文件,但是是加密的
  6. wce 在内存中读取登录的账号的sessions信息
  7. wce -lv查看当前登录的sessions信息
  8. wce -d password计算hash密码
  9. wce -w读取一个存储的明文包密码,有可能能独处登录用户的密码,其实也就是Digest这个包中存在明文密码。
  10. wce可以执行的话呢必须要是管理员
  11. wce -i 0004BE06 -s xxx:xxxxxxxxxxxx:xxxxxxxxxx
  12. 上面这句话的意思就是说,把那个0004BE06的账号改为后面的这个账号
  13. mimikatz使用先提权
  14. privilege::debug提升权限
  15. sekurlsa::logonPasswords可以查看太多的信息。
  16. ts::multirdp允许多用户同时登陆
  17. event::clear清除安全日志
  18. event::drop不产生安全日志
  19. 使用一定的漏洞进行提权,例如MS-11-080,MS14-068

Linux提权

首先需要一台Linux内核小于2.6.39的一个系统(这里用的是bee的那个Ubuntu),我们现在是普通用户。
normalusr
然后我们在kali中编译这个版本的漏洞,搜索2.6.39,使用18411.c这个文件,Linux内核的一个漏洞
gcc
然后将生成的exp放在目标系统上。
但是生成的文件无法运行,需要将源码移植到Ubuntu上面,然后在上面运行gcc编译源码。
但是最终我还是没有能够进行提权,我觉得可能是我的版本太低了。

配置不当提权

就是通过有些服务是system权限运行的,我们替换掉这个文件然后重启服务,我们修改的程序就有了system的权限。
当然我们需要有修改文件的权限(这一点需要管理员配置不当)。

Windows下查找

使用icacls进行文件权限的查询。
常用命令:icacls c:\windows\*.exe /save perm /T
这个是进行递归的一个查询Windows下面的程序的权限列举,生成一个perm文件进行保存。
最后搜索一个:FA;;;BU找到对应的程序,然后我们替换,就等着管理员重启机器。
替换的文件可以进行捆绑反弹shell。

Linux下查找

find / -perm 777 -exec ls -l {} \;

查找隐私信息

Linux:

  1. /etc/resolv.conf
  2. /etc/passwd
  3. /etc/shadow
  4. whoami,who -a
  5. ifconfig -a ,iptables -L -n,netstat -rn
  6. uname -a.ps aux
  7. dpkg -l | head

Windows:

  1. ipconfig /all ,ipconfig /displaydns,netstat -bnao,netstat -r
  2. new view,new view /domain
  3. new user /domain,net user %username% /domain
  4. net localgroup administrator username /add
  5. net group “Domain Controllers” /domain
  6. net share name$=C:/unlimited
  7. net user username /active:yes /domain