php专区

 首页 > php专区 > PHP应用 > 常用功能 > 从后台到webshell的一点思路 - php高级应用

从后台到webshell的一点思路 - php高级应用

分享到:
【字体:
导读:
          主要是利用后台对access数据库的备份数据库或恢复数据库功能,备份的数据库路径等变量没有过滤导致可以把任意文件后缀改为asp,从而得到websh...

从后台到webshell的一点思路

主要是利用后台对access数据库的“备份数据库”或“恢复数据库”功能,“备份的数据库路径”等变量没有过滤导致可以把任意文件后缀改为asp,从而得到webshell,msssql版的程序就直接应用了access版的代码,导致sql版照样可以利用,具体方法和分析可以参考angel的文章《动网论坛7.0获得WebShell的分析》,据我所知,目前还有很多的asp程序后台存在这样的漏洞,利用方法大同小异。

php+mysql程序

① 利用后台的数据查询功能

在有的程序后台提供直接对mysql数据查询功能,我们就可以利用它执行SELECT ... INTO OUTFILE查询输出php文件,因为所有的数据是存放在mysql里的,所以我们可以通过正常手段把我们的webshell代码插入mysql在利用SELECT ... INTO OUTFILE语句导出shell。我们这里用ipb论坛做个演示:

第一步:把我们的webshell代码写入数据库

随便找个可以写入的地方(注意对你输入的要没有进行过滤),这里我们就用后台的新建立个论坛,在论坛描叙里写入我们的shell代码 提交 ok这样就把我们的shell写入了数据库了。

第二步:导出webshell

我们来到“SQL Management”里的“mySQL Toolbox”在“Run Query”里写入语句:

SELECT * FROM 123forums into OUTFILE 'd:shell.php'

shell代码所在的表,web目录绝对路径,如果主机mysql查询成功,我们就得到我们webshell:

http://127.0.0.1/test/shell.php?c=dir

② 利用mysql数据备用

思路结合上面的2种情况,有的程序在备用数据库时 对备用文件的类型没有限制,从而导出php文件,我们和①中那样,通过把webshell代码写入数据库中,在利用数据备用导出webshell,我们大家熟悉的vbb论坛就可以用这个方法来得到webshell,我们设置用户的签名为 然后到后台的数据库备份,在“在服务器上备份数据库到文件”里改为shell.php,提交保存。我们就可以在论坛的根目录下访问我们的shell了,因为可能到处的文件比较大,我们可以换一个可以生成文件的webshell代码。

补充思路:利用web后台系统设置,如果是系统设置是保存在php/asp文件了,我们可以同过在设置里写入webshell代码到保存设置的php/asp文件了.

演示:程序sablog,sablog的基本设置保存在adminsettings.php 由于后台在提交设置的变量十没有过滤,导致我们可以向adminsettings.php写入任意代码。

进入后台--“基本设置”--“blog名称”(其他项也可以)--填入代码:sss";phpinfo();"ss --提交。

这样我们就把phpinfo()写入了adminsettings.php,我们可以看到adminsettings.php正常显示php的信息.

分享到:
PHP的DIRECTORY_SEPARATOR,PATH_SEPARAT...
PHP的DIRECTORY_SEPARATOR,PATH_SEPARATOR PHP的DIRECTORY_SEPARATOR,PATH_SEPARATOR 有需要的朋友可参考. DIRECTORY_SEPARATOR:路径分隔符,linux上就是‘/’ windows上是‘’ 一个是:PATH_SEPARATOR PATH_SEPARATOR:include多个路径使用,在windows下,当你要include多个路径的话,你要...
PHP单例模式学习笔记详解 - php高级应用
PHP单例模式学习笔记详解 单例模式是php中一个为了简化大家开发及重复调用的一个功能,下面我来给各位朋友详细介绍单例模式用法。 1.单例模式的概念 顾名思义,单例模式只有一个实例,而且自行实例化,向全局提供这个实例,需要强调的是,单例模式,确保某个类只能有一个实例! 2.单例模式的三个...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……