内网渗透之——权限维持

介绍

当攻击者获取服务器权限后,通常会采用一些后门技术来维持自己当前得到的权限,服务器一旦被植入后门,那么攻击者下次进入就方便多了

目的

由于攻击可能被发现,被发现后可能会被将之前拿到的的webshell清除,导致目标丢失,所以需要留下后门来维持权限,达到持续控制的目的

获取系统登陆账号密码

windows获取系统登陆账号密码

windows系统账号密码存储位置:

C:\Windows\System32\config\SAM

windows密码验证原理:
在Windows系统中,对用户账户的安全管理采用了SAM(Security Account Manager,安全账号管理)机制,用户账户以及密码经过Hash加密之后,都保存在SAM数据库中。
SAM数据库保存在C:\WINDOWS\system32\config\SAM文件中,当用户登录系统时,首先就要与SAM文件中存放的账户信息进行对比,验证通过方可登录。系统对SAM文件提供了保护机制,无法将其复制或是删除,也无法直接读取其中的内容。

SAM文件加密方式:
1.LM加密:Windows2003之前,包括win2003系统
2.NTLM加密:Windows 2003之后的系统
LM和NTLM都是基于Hash加密,但是它们的安全机制和安全强度存在差别,LM口令散列的安全性相对比较差。尽管现在已很少有人使用Windows2k之前的老版本系统,但为了保持向后兼容性,默认情况下,系统仍会将用户密码分别用这两种机制加密后存放在SAM数据库里。
区别:
LM加密,密码最多14位,如果口令不足14位,不足的部分用0补齐,把所有的字符转变为大写,然后分成两组,每组7位,分别加密,然后拼接在一起,就是最终的LM散列,本质是DES加密。
NTLM加密,先将用户口令转变为unicode编码,再进行标准MD4单向哈希加密。
LM加密安全性远低于NTLM加密,因为NTLM加密它允许使用更长的密码,允许有大小写的不同,而且也无须把密码分割成更小、更易于被破解的块。所以在一个纯NTLM环境中,应该关闭Lan Manager加密方式

获取SAM文件内容:

获取sam密码方式
1.非免杀版工具:wce.exe,QuarksPwDump.exe,Pwdump7.exe,gethash.exe,mimikatz
2.免杀版:
2.1使用注册表导出hash:
命令

 reg save hklm\sam C:\hash\sam.hive
 reg save hklm\system C:\hash\system.hive

之后将导出的文件下载下来,使用Pwdump7进行破解
2.2导出sam文件
shadow copy (一般用在域控上几万 几十万用户的时候)
2.3其他方式
procdump(或者lsadump)+mimikatz
Powershell+mimikatz
powershell+getpasshash
powershell+其他工具

破解密码
1.在线破解
http://www.objectif-securite.ch/en/ophcrack.php
http://cmd5.com
https://somd5.com
2.本地破解( 暴力破解)
LM加密: cain
 NTLM加密: ophcrack+彩虹表(彩虹表下载:http://ophcrack.sourceforge.net/tables.php)

注意事项
1.LM只能存储小于等于14个字符的密码hash,如果密码大于14位,windows就自动使用NTLM对其进行加密了,只有对应的NTLM hash可用了,在LM-Password中会以全0显示。
2.一般情况下使用工具导出的hash都有对应的LM和NTLM值,也就是说这个密码位数<=14,这时LM也会有值,除了LM值全为0之外,在老版本中看到LM:aad3b435b51404eeaad3b435b51404ee开头显示的表示密码为空或者位数超过14位
3.在win2K3之前包括win2K3会默认启用LM加密,win2K3之后的系统禁用了LM加密,使用NTLM加密
4.LM方式的加密会存在一个对应的NTLM hash值

实例1:使用非免杀工具QuarksPwDump.exe导出本地哈希值

1.利用ms15-051x64.exe(exp)提权成功后菜刀虚拟终端输入命令:

C:\Windows\Temp\ms15-051x64.exe "C:\Windows\Temp\QuarksPwDump.exe --dump-hash-local"

2.AFFFEBA176210FAD4628F0524BFE1942即为密码,之后拿到cmd5进行破解即可

实例2:利用mimikatz抓取账号明文密码

注意:只能抓取已经登陆用户的密码

原理:
从lsass.exe进程中直接获取密码信息进行破解,而且该破解应该并非穷举方式,而是直接根据算法进行反向计算
lsass.exe是系统进程,用于本地安全认证服务

1.利用菜刀上传mimikatz到目标机C:\Windows\Temp\下

2.利用ms15-051x64.exe(exp)提权成功后菜刀虚拟终端输入命令:

C:\Windows\Temp\ms15-051x64.exe "C:\Windows\Temp\mimikatz.exe privilege::debug sekurlsa::logonpasswords exit"

inux、unix获取系统登陆账号密码

系统账号密码存储位置:

密码:/etc/shadow      账号:/etc/passwd

/etc/shadow
例:root:$1$Bg1H/4mz$X89TqH7tpi9dX1B9j5YsF.:14838:0:99999:7:::
当$1为1时,使用md5加密,为5时,采用SHA256进行加密,为6时,采用SHA512进行加

破解:
John the ripper

其他方法持续更新中.........................

发布了55 篇原创文章 · 获赞 59 · 访问量 6957

猜你喜欢

转载自blog.csdn.net/wsnbbz/article/details/104825613