conn.asp暴数据库破绽是一个严重的网络安全问题,它允许攻击者通过特定的URL编码方式来获取数据库的物理路径,从而可能导致敏感数据泄露、网站被改动等严重后果,以下是对该破绽的详细分析:
1、相对路径与绝对路径:
相对路径:相对于网站Web根目录的路径,服务器的Web根目录为“D:web”,在根目录中建立的名为“asp”的目录就是相对于“D:web”的一级子目录,在网站链接上,“D:web”对应的是“http://localhost”,而“asp”目录就是相对于“http://localhost”的一级目录,在Web服务中访问“asp”目录时,只需在浏览器中输入相对路径“http://localhost/asp”即可。
绝对路径:指在服务器磁盘中的真实路径,上述例子中“asp”目录的绝对路径就是“D:webasp”,在IIS(Internet Information Services)中,还有一个特殊的目录路径——“虚拟目录”,每个Web服务可以从多个目录中发布,Web服务器可拥有一个宿主目录和任意数量的其他发布目录,这些其他发布目录就被称为虚拟目录,通过IIS的虚拟目录设置,可以将位于任意路径的论坛程序(如“E:bbs”)转化为在“Web”目录下的访问路径,即“http://localhost/bbs”。
2、%5C暴库原理:
在conn.asp文件中,通常会有类似“database=‘路径’”这样的代码语句,路径”是一个相对路径,根据调用conn.asp的页面文件的不同,这个相对路径会被解析为不同的物理路径,如果路径是“data.mdb”(假设网站根目录是“D:wwwroot”,conn.asp的路径是“D:wwwrootincconn.asp”,数据库的物理路径是“D:wwwrootdata.mdb”),那么哪个页面文件调用conn.asp,数据库的路径就会是调用conn.asp的页面文件的路径加上“data.mdb”,如果是网站根目录下的文件调用,则数据库物理路径解析为“D:wwwrootdata.mdb”;如果是inc下的页面调用,则数据库物理路径被解析成“D:wwwrootincdata.mdb”,而这个路径往往是不存在的。
当浏览器中的链接地址被修改提交后(如将“/”换成“%5C”),由于IE浏览器的解码特性,它会将错误的网站路径传输给网站服务器,IIS服务器收到用户提交的信息并做出解析时,又会将“%5C”还原成“”,在IIS服务器中,用户提交的网址相对路径就变成了类似“asptest.asp”或“aspconn.asp”这样的路径。“server.mappath”方法获得的数据库路径就会出错,因为IIS会将“”之前的相对路径信息忽略掉,从而导致数据库连接失败,并返回错误信息,这个错误信息中往往包含了数据库的真实路径或部分路径信息,从而暴露了数据库的位置。
1、利用网站后台扫描工具:
使用网站后台扫描工具(如wwwscan)对目标服务器进行扫描,扫描结果可能会发现目标网站的后台地址和一个/inc/conn.asp页面。
2、修改URL进行暴库:
将站点链接的最后一个“/”改为“%5c”,然后提交,如果原始URL是“http://www.test.com/test/vote.asp?id=123”,则修改后的URL为“http://www.test.com/test%5C/vote.asp?id=123”,提交后,如果网站存在conn.asp暴库破绽,就会返回类似的错误信息:“错误类型:Microsoft JET Database Engine (0x80004005)找不到文件 ‘D:webxxxxx.mdb’。/aspconn.asp,第4行”,这里的“D:webxxxxx.mdb”就是暴出的部分数据库路径信息。
1、修改conn.asp代码:
不要直接在conn.asp文件中暴露数据库的相对路径信息,可以采用配置文件或环境变量的方式来存储数据库连接信息,然后在conn.asp中引用这些配置信息,这样即使conn.asp文件被下载或暴库成功,也不会直接暴露数据库的路径。
对数据库连接字符串进行加密处理,增加攻击者破解的难度。
2、调整IIS设置:
检查IIS的权限设置,确保只有必要的用户和应用程序具有访问数据库的权限,对于不需要执行数据库操作的用户和应用程序,应限制其访问权限。
启用IIS的日志功能,记录所有对数据库的访问请求和操作行为,定期分析日志文件,及时发现异常行为并采取相应的措施。
3、其他安全措施:
定期更新和维护网站服务器及应用程序,及时修复已知的安全破绽。
对网站进行安全审计和渗透测试,及时发现并修复潜在的安全隐患。
加强网络安全意识培训,提高开发人员和管理员的安全意识和技能水平。
1、问:什么是conn.asp暴库破绽?
答:conn.asp暴库破绽是指由于conn.asp文件中数据库路径配置不当或存在安全破绽,导致攻击者可以通过特定的URL编码方式(如将“/”替换为“%5C”)来获取数据库的物理路径信息,从而进一步利用这些信息进行攻击的一种安全破绽。
2、问:如何防范conn.asp暴库破绽?
答:防范conn.asp暴库破绽的方法包括修改conn.asp代码以隐藏或加密数据库连接信息、调整IIS设置以限制不必要的访问权限、启用日志功能以记录异常行为、定期更新和维护网站服务器及应用程序以及加强网络安全意识培训等。