载入中…
设为首页 加入收藏
导航
新闻中心 | 行情中心 | 技术技巧 | 电脑知识 | 产品知识 | 网吧联盟 | 草阳网络 | 域名主机 | 人才招聘 |
报价 品牌电脑 | 数码专区 | 硬件之家 | 软件天地 | 办公耗材 | 网络设备 | 电子商务 | 供求发布 | 驱动中心 |

百姓网

您现在的位置: 财富—徐州报价网 >> 学习 >> 知识学习 >> 网络安全 >> 学习正文
相 关 文 章
没有相关学习
精 彩 推 荐
最 新 热 门
 
最 新 推 荐
 
广告位置
欢迎光临徐州报价网,现在是:  祝您学有所成!玩得开心!
教你利用log备份获取WEBSHELL
教你利用log备份获取WEBSHELL
原文作者:未知  文章录入:xzbaojia004  发布时间:2006-7-3 15:21:18    

Blog被人渗透了一下,不知道各位掉了什么东西没有。原来有一次blog的目录可以列出来,那次我掉了一个小东西,然后今天别人告诉我NBSI 3用了那个东西的方法……呵呵,有点晕,就是下面的,成功率还是很高的,大家可以试试看。嗯,方法流出去无所谓,文章留着吧。

  dbowner通过注射得到一个shell应该不是什么难事情了,比较麻烦的是就算利用增量备份,仍然有很多不确定的因素,如果之前别人有过什么错误的写入信息,可能备份出来得到的还是一些不能用的500错误,如何能够提高成功率及重用性呢?如果单从调整增量备份的方式来看,尽管能够达到一些效果,但是方法比较复杂而且效果不明显。加上关于重用性的考虑,例如多次备份的成功率,backup database的方法并不太适用。这里将要讲述的是另外一个备份的方法,导出日志文件到web目录来获得shell。

  饭要一口一口的吃,技术问题也要一个一个的解决,得到webshell首先要知道物理路径,然后才能说其他的。关于物理路径的暴露有很多方法,注入也可以得到,这点nbsi2已经做到了,就不再多说。值得注意的是,如果数据库和web分离,这样肯定得不到webshell,备份出来的东西可以覆盖任何文件,一些关于开始菜单的想法还是有效的,只要注意扩展名就好。扯远了,反正如果数据库和web在一块的,你就有机会,反之还是想其他的办法吧。

  然后你要得到当前的权限和数据库名。如果是sysadmin当然没有必要做很复杂的事情,dbowner足矣,public则不行。当前打开的库名用一个db_name()就可以得到,同样很简单。

  默认的情况是,一般选择的数据库故障还原类型都是简单,这时候不能够对日志文件进行备份。然而我们都是dbowner了,还有什么不能做的呢,只要修改一下属性就可以。由于不能去企业管理器中修改,只有用一段SQL语句,很简单的,这样就可以:

alter database XXXX set RECOVERY FULL

  其中XXXX是你得到的数据库的名字,执行过后就可以备份日志了。这种修改是破坏性的,因为你不知道以前的故障还原模式是什么,细心的管理员看到异样,可能就要开始起疑心。如果之前你能得到数据库的状态,最好还是在备份完以后把这个数据库的属性改回来。

  剩下的事情就是怎样让数据库用最原始的方式记录下你的数据了。这一点和backup database中设定表名为image的问题相对应,如果你只是建立一个之类的表,日志里面的记录还是以松散的格式记录的,也就是< % % >,没有任何效果。通过实际的测试,发现还是可以通过与backup database类似的方式记录进去,如下:

create table cmd (a image)
insert into cmd (a) values (’’)
backup log XXXX to disk = ’c:\xxx\2.asp’

  这样你已经得到一个webshell了。

  到这里就完了么?没有,呵呵,我们继续。

[1] [2] 下一页

  • 上一篇学习:

  • 下一篇学习:
  • 论坛交流】【发表评论】【打印本文】【关闭窗口

    网站公告 | 友情链接 | 版权申明 | 访客留言| 广告服务

    Copyright ©
    建议使用1024*768分辨率及IE6.0以上浏览器对本站进行浏览 |
    | |QQ:239303001

    公司名称:徐州草阳网络科技有限公司
    联系地址:徐州市中山南路122号 现代数码港4A11室(中医院对面)
    公司电话:0516-82023118 82023228 13395221718

    徐州IT电脑报价网 徐州海云电脑大世界 徐州现代数码广场 徐州IT界 淮海IT中心