独家分享真正能防数据库下载的字符

2014-06-18 17:36:25 37 4696


数据库防下载这个话题已是老生常谈了,比较有效的解决方案就是,空间本身上设置。

以下是两种白痴做法:
1. 后缀改成 asa或asp
  有点含量的就是再在里面加防下载表;但同样是找死,代码是可以插闭合的,把后缀搞成这两种形式简直就是自杀;一句话就要了命。
2. 加入 # % 这两种特殊字符;
%23和25%直接下,地球人都知道;

下面分享一种独家防下载方法【测试环境】,一个字符搞定:
就【】括号中这个字符:可能在网页上显示不出来,它的对应asc码是127,在记事本中 alt+127就出来了,win7下记事本中很像一个空格,XP记事本下应该显示的是一个黑棒棒。  如果在数据库名字中插入这个字符,那么它就再也没办法被解析出来,用 7F% 也是不行的,返回 Invalid URL 。
当然,如果utf-8编码的,也可以使用unicode字符,这也可以防下载,但是 对于gbk文件来说,unicode字符会被当问号,这样就没办法连接数据库了。而【】哪种编码都可以,用来防下载可以说是绝佳的选择。

经我的测试asc编码在1-255这些字符中,能同时在gbk和utf-8的编码中使用,也只有这一个字符有这样的奇效。如果你有其它nb字符也来分享一下吧。。。


备注: 【本字符在iis环境下实用,IIS6.0,IIS7.0,IIS7.5,IIS8.0 正式web服务器环境下通过测试 】    apache没测试(也没必要);   对于aspweb.exe 小旋风等本地简易服务器通不过 xp IIS5.1的ms也不行(正式的web服务器也不可能用这些低级的环境吧)。

关于作者

新仙剑之鸣121篇文章1466篇回复

评论37次

要评论?请先  登录  或  注册
  • 17楼
    2014-7-5 22:17

    可怕,折腾帝

  • 16楼
    2014-7-5 22:13
    anlfi

    感谢分享 chr(127) 是 删除符号iis 环境测试可用似乎iis 解析处理这了个字符 和当初 ; 一样 type char(127).xxxxxxx.html 会自动更具符号的含义 删掉开头的一个空格 缩进 或者在中间加入字符删掉一个x因为无法找到文件进行解析 同时文件也不存在 导致参数错误有点异曲同工的感觉应该跟编码无关 只是符号特殊

    1

    每次看到你回帖,都感觉大牛的功底好深厚

  • 15楼
    2014-7-5 21:24

    好思路,听说ASP的比PHP的有利于优化,我用的ASP+access,刚好用到

  • 14楼
    2014-7-2 19:37

    好办法,那么一楼的意思是 jimo.asp【.jpg这样也能绕过;号?回头测一下。:P

  • 13楼
    2014-7-2 11:08

    括号中的怎么打出来啊 每次都的用工具转换么

  • 12楼
    2014-6-20 08:45

    怎么奇葩的方法怎么被你想到的~ PS:随便收藏核总发言

  • 11楼
    2014-6-19 22:38

    这个方法好,收藏了

  • 10楼
    2014-6-19 11:38

    好办法赞一个

  • 9楼
    2014-6-19 09:14
    核攻击

    搞得太复杂了。直接在iis扩展映射里,添加一个 mdb --> c:\windows\不存在.dll即可。访问任何 .mdb 后缀都会直接 404。

    1

    核老大驾到啊,空间设置确实很有效,但是没服务器权限,只是个空间。。。就没办法了。 还有一种更有效的方法,就是把数据库后缀改成没有映射的mime的类型 如: xxx.dll 这种也没办法下载了

  • 8楼
    2014-6-19 08:45

    搞得太复杂了。 直接在iis扩展映射里,添加一个 mdb --> c:\windows\不存在.dll 即可。 访问任何 .mdb 后缀都会直接 404。

  • 7楼
    2014-6-18 20:09
    anlfi

    感谢分享 chr(127) 是 删除符号iis 环境测试可用似乎iis 解析处理这了个字符 和当初 ; 一样 type char(127).xxxxxxx.html 会自动更具符号的含义 删掉开头的一个空格 缩进 或者在中间加入字符删掉一个x因为无法找到文件进行解析 同时文件也不存在 导致参数错误有点异曲同工的感觉应该跟编码无关 只是符号特殊

    1

    原理是什么,也搞不清除。。。有大牛给分析下就好了

  • 6楼
    2014-6-18 20:01
    nandi

    完全没有用,txt、asp、aspx全都可以带】访问。。。。。

    1

    iis下(6.0+6.0以上)肯定没问题的

  • 5楼
    2014-6-18 18:37

    其实这主要还是看服务器的web端了。

  • 4楼
    2014-6-18 18:37

    完全没有用,txt、asp、aspx全都可以带】访问。。。。。

  • 3楼
    2014-6-18 18:22

    数据库防下载搞这么麻烦干什么

  • 2楼
    2014-6-18 18:20
    anlfi

    感谢分享 chr(127) 是 删除符号iis 环境测试可用似乎iis 解析处理这了个字符 和当初 ; 一样 type char(127).xxxxxxx.html 会自动更具符号的含义 删掉开头的一个空格 缩进 或者在中间加入字符删掉一个x因为无法找到文件进行解析 同时文件也不存在 导致参数错误有点异曲同工的感觉应该跟编码无关 只是符号特殊

    1

    亲你是IIS么? 还是apache? access一般在iis下连的吧 ,我iis6,ii7,iis8都试了,无法解析啊。

  • 1楼
    2014-6-18 18:16

    感谢分享 chr(127) 是 删除符号 iis 环境测试可用 似乎iis 解析处理这了个字符 和当初 ; 一样 type char(127).xxxxxxx.html 会自动更具符号的含义 删掉开头的一个空格 缩进 或者在中间加入字符删掉一个x 因为无法找到文件进行解析 同时文件也不存在 导致参数错误 有点异曲同工的感觉 应该跟编码无关 只是符号特殊