你见过的最糟糕的安全漏洞是什么?为了保护罪犯,限制细节可能是个好主意。
不管怎样,这里有一个关于如果你发现了安全漏洞该怎么办的问题,还有一个关于如果公司(似乎)没有回应该怎么办的问题。
你见过的最糟糕的安全漏洞是什么?为了保护罪犯,限制细节可能是个好主意。
不管怎样,这里有一个关于如果你发现了安全漏洞该怎么办的问题,还有一个关于如果公司(似乎)没有回应该怎么办的问题。
当前回答
我在浏览一个购物网站,当我输入我的电子邮件地址时,我注意到地址输入页面的URL只有“?nOrderID=301”。
下车。我把数字改成99,你猜怎么着?我得到了一位住在本德的女士的名字,地址和电话号码。
几周前我确实给网站管理员发过邮件,他听起来不太高兴,但这个问题仍然没有解决……
有一段时间,该公司的整个员工信息列表(从地址到社会安全号到工资的所有信息)都存储在密码保护的Access数据库中。
使用您最喜欢的搜索引擎,查找如何恢复访问数据库的密码。是的。
拖拽到这里,你就会得到密码。字典中五个字母组成的单词。
其他回答
对我来说,最糟糕的,最可怕的,最危险的,犯罪的疏忽,但在彻底破坏整个系统的安全方面,奇怪的优雅总是来自the Daily WTF:
客户端PHP
function saveform()
{
var firstName = escapeSql(mainForm.elements.txtFirstName.value);
var lastName = escapeSql(mainForm.elements.txtLastName.value);
/* ... */
var offerCode = escapeSql(mainForm.elements.txtOfferCode.value);
var code =
' $cn = mssql_connect($DB_SERVER, $DB_USERNAME, $DB_PASSWORD) ' +
' or die("ERROR: Cannot Connect to $DB_SERVER"); ' +
' $db = mssql_select_db($DB_NAME, $cn); ' +
' ' +
' if (mssql_query("SELECT 1 FROM APPS WHERE SSN=\''+ssn+'\'", $cn)) ' +
' { $ins = false; } ' +
' else ' +
' { $ins = true; } ' +
' ' +
' if ($ins) { ' +
' $sql = "INSERT INTO APPS (FIRSTNM, LASTNM, ..., OFFERCD) VALUES ("; ' +
' $sql+= "\''+firstName+'\',"; ' +
' $sql+= "\''+lastName+'\',"; ' +
' $sql+= "\''+offerCode+'\')"; ' +
' ' +
' /* ... */ ' +
' ' +
' mssql_query($sql, $cn); ' +
' mssql_close($cn); ';
execPhp(code);
}
就盯着它看一分钟。想想你所能做的一切。女士们先生们,这是洛夫克拉夫特的杰作。
我所见过的最糟糕的安全漏洞实际上是由你们公司编写的,导致谷歌机器人删除了我的整个数据库。
当我第一次学习经典ASP时,我编写了自己的基本博客应用程序。包含所有管理脚本的目录在IIS上受到NTLM的保护。有一天,我移动到一个新的服务器,忘记重新保护IIS中的目录(哎呀)。
博客主页有一个指向主管理界面的链接,主管理界面为每条记录都有一个DELETE link(没有确认)。
有一天,我发现数据库中的每一条记录都被删除了(数百条个人记录)。我以为是某个读者闯入了网站,恶意删除了所有的记录。
我从日志中发现:谷歌机器人爬了站点,跟踪管理链接,然后继续跟踪所有的DELETE链接,从而删除数据库中的每一条记录。我觉得我当之无愧的年度傻瓜奖被谷歌机器人无意中损害了。
谢天谢地,我有备份。
public class AuthenticationServlet extends HttpServlet
{
private String userName;
private String password;
protected doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{
userName = request.getParameter("userName");
password = request.getParameter("password");
authenticateUser(userName,password);
......
}
}
显然,正如有人在自动化负载测试中发现的那样,单例和缺乏同步会导致安全问题。
对我来说,情况并没有那么糟糕,因为数据并不是那么敏感:
我得到了一个Excel文件,里面满是要更新的宏,每个表都是锁定的,宏部分有密码保护。我拿到了密码,但我想我还是试着破解一下吧。
我找到了一个程序,可以在大约十分钟内完成,其中大部分时间可能只是下载时间。这个神奇的产品是什么,能如此快速和轻松地突破Excel安全?OpenOffice.Org。
我不确定Office 2007是否在这一点上有所改进,但让我感到害怕的是,许多非技术人员可能正在使用Excel来操作敏感信息,并认为它是安全的。然而,这些类型的人可能甚至不知道它提供的“安全”功能。
http://www.metasploit.com/users/hdm/tools/debian-openssl/