ASP数据库插马小议 's

admin 2017年4月12日03:47:10评论323 views字数 832阅读2分46秒阅读模式
摘要

By lake2 ( http://lake2.0x54.org )随着技术的发展,ASP数据库插马也不是什么新鲜的东东了,相信阁下也玩过这个的吧。呵呵,那你有没有遇到过插入的asp代码被空格拆开的情况呢(即插入的每个字符之间都出现了空格)?现在,就让我们来解决这个问题。

By lake2 ( http://lake2.0x54.org )

随着技术的发展,ASP数据库插马也不是什么新鲜的东东了,相信阁下也玩过这个的吧。呵呵,那你有没有遇到过插入的asp代码被空格拆开的情况呢(即插入的每个字符之间都出现了空格)?现在,就让我们来解决这个问题。

经过对多例实际情况的分析,我发现只要出现代码被空格隔开的数据库,相应的字段的Unicode压缩属性总是“否”。相反,如过Unicode压缩属性为“是”,则可以通过该字段进行插马。

经过搜索,发现微软官方对Unicode压缩的描述:“Microsoft Access 2000 或更高版本使用 Unicode 字符编码方案来表示文本、备注和超链接字段中的数据。Unicode 将每个字符表示为两个字节……需要的存储空间比在 Access 97 或更早版本中要多……可通过将“文本”、“备注”或“超链接”字段的“Unicode 压缩”属性的默认值设为“是”来弥补 Unicode 字符表达方式所造成的影响”

哦,原来开启了 Unicode 压缩的话,数据库会自动把拉丁字符(西欧语言如英语、西班牙语或德语)用1个字节来存储;如果没开启,数据库就会用2个字节(1个字节为0x00,作为文本将被自动转换为空格)存储拉丁字符,也就造成了插入的asp代码被空格隔开的情况。

那么,在这种情况下如何插马呢?

突破口就在 Unicode 压缩那儿,既然数据库不给我们压缩,那么就让我们自己来压缩吧。很简单,就是把asp代码先转化为 Unicode 然后再插入数据库。我用VB写了个小软件来实现这个功能,注意由于转换的时候容易产生不可显示的字符(将会出现?),所以要精心构造代码咯,当然你也可以捡便宜用图中那个我构造的^_^
ASP数据库插马小议  's
对VB来说,转换之后的代码的长度已经减少一半,嘿嘿,那这个可不可以说是对最小的ASP后门的一种突破呢?

程序可在这里下载之:http://www.0x54.org/lake2/program/a2u4hack.exe ,呵呵,Enjoy It !

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2017年4月12日03:47:10
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   ASP数据库插马小议 'shttps://cn-sec.com/archives/48609.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息