您看到过的最严重的安全漏洞?[关闭]


413

您见过的最严重的安全漏洞是什么?限制细节以保护罪行可能是一个好主意。

对于它的价值,这里有一个问题,如果您发现安全漏洞,该怎么办;如果公司没有(似乎)做出响应,那么另一个问题就是一些有用的答案。


47
应该是社区维基imo ...
ChristopheD

好线程!我希望可以将其链接到DailyWTF.com
Dale

为什么要关闭?这是一个完全合理的问题?!
约翰·约翰逊

15
60个答案和28个投票似乎超过了5票的投票结果。但在进行讨论之前,我将不投票重启。
rmeador

7
即使您的问题已经成为社区Wiki数小时,该评论仍然是一个不错的评论,因为它提醒人们与该问题类似的问题应该是社区Wiki。那就是我所想的。
Joren

Answers:


646

从早期的在线商店开始:

在购物车的数量字段中输入.1可获得90%的折扣。该软件正确地将总成本计算为.1 *成本,而人工包装的订单只是简单地掩盖了奇数“”。在要包装的数量前面:)


75
这绝对是赞成使用强类型系统的论点。
Powerlord

54
什么地方?我想要90%的折扣!!!
amischiefr

58
也许您应该要求.10%的数量。;)
MiffTheFox

81
杰夫·贝索斯(Jeff Bezos)提到,在亚马逊成立之初,您的书籍数量可能会是负数,而亚马逊会记入您的帐户(并可能会等您将其发送给他们)。在youtube.com/watch?v=-hxX_Q5CnaA上
杰夫·摩泽尔2009年

10
本来希望看到真正交付他所购买的.1硬盘驱动器的客户的面孔。
转租

575

谷歌黑客Google hacking)是最不可原谅的安全漏洞,不幸的是,这是一个非常常见且易于发现的漏洞。例子:

http://www.google.com/search?q=inurl%3Aselect+inurl%3A%2520+inurl%3Afrom+inurl%3Awhere

令人惊讶的是,Internet上,尤其是政府网站上有多少页面通过查询字符串传递SQL查询。这是最糟糕的SQL注入形式,并且无需花费任何精力即可找到易受攻击的站点。

通过细微的调整,我已经能够找到不受保护的phpMyAdmin安装,不受保护的MySQL安装,包含用户名和密码的查询字符串等。



6
噢,亲爱的上帝,多么愚蠢。那将是我手持开发人员将开发人员向HR迈进的过程。
squillman

95
小鲍比桌子再次罢工... xkcd.com/327
gbjbaanb,2009年

86
OMFG ...下次我遇到糟糕的一天时,我会
去掉

11
我对这个示例的真正喜欢是,第一个结果来自一个Oracle博客。
拉维·瓦劳

400

社会工程学:

<Cthon98> hey, if you type in your pw, it will show as stars
<Cthon98> ********* see!
<AzureDiamond> hunter2
<AzureDiamond> doesnt look like stars to me
<Cthon98> <AzureDiamond> *******
<Cthon98> thats what I see
<AzureDiamond> oh, really?
<Cthon98> Absolutely
<AzureDiamond> you can go hunter2 my hunter2-ing hunter2
<AzureDiamond> haha, does that look funny to you?
<Cthon98> lol, yes. See, when YOU type hunter2, it shows to us as *******
<AzureDiamond> thats neat, I didnt know IRC did that
<Cthon98> yep, no matter how many times you type hunter2, it will show to us as *******
<AzureDiamond> awesome!
<AzureDiamond> wait, how do you know my pw?
<Cthon98> er, I just copy pasted YOUR ******'s and it appears to YOU as hunter2 cause its your pw
<AzureDiamond> oh, ok.

来自bash.org


2
过去一直在Runescape上发生。
EvilTeach 2010年

7
这种特定的交换极不可能实际发生(当他们试图掩盖某些东西时,谁会键入“ er”?),但仍然很有趣。
迈克尔·迈尔斯

1
mmyers:也不太可能有人愚蠢到得到rm -rf'd,但这肯定会发生。我自己看过它:)
马修·伊瑟林

25
没有什么比白痴的大脑更不安全了
Earlz

1
@EvilTeach实际上是在RuneScape上实现的。甚至没有开玩笑!
corsiKa 2011年

339

我在微软初期的真实故事。

直到您醒来的那一天,您才知道恐惧,并在当天早上在ZDNet.com上看到了标题为“ 在'Blah'中发现了最糟糕的Internet Explorer安全漏洞” “'Blah'是您六个月前编写的代码。

上班后,我立即检查了更改日志,发现另一个团队中的某个人(我们信任该人对产品进行了更改)已经签出了我的代码,无缘无故地更改了许多安全注册表项设置,再次签入,从未进行代码审查或从未告诉过任何人。直到今天,我仍然不知道他以为他在做什么。此后不久,他离开了公司。(他自己同意。)

(更新:对评论中提出的问题的一些回应:

首先,请注意,我选择采取慈善立场,认为安全密钥更改是无意的,并且基于粗心或不熟悉,而不是恶意。我没有一种或另一种证据,并且相信将错误归因于人类的谬误是明智的。

第二,我们的签到系统现在比十二年前强大得多。例如,现在如果没有签到系统通过电子邮件将变更列表发送给相关方,则无法签入代码。特别是,在船运周期后期进行的更改周围有很多“过程”,这确保了进行正确的更改以确保产品的稳定性和安全性。)

无论如何,该错误是因为不安全地使用Internet Explorer的对象已被意外释放为标记为“脚本安全”。该对象能够将二进制文件(实际上是OLE Automation类型库)写入任意磁盘位置。这意味着攻击者可以制作一个包含某些敌对代码字符串的类型库,将其保存到已知的可执行位置的路径中,为其提供扩展名,以使脚本得以运行,并希望用户以某种方式进行操作会意外地运行代码。我不知道使用此漏洞的任何成功的“真实世界”攻击,但是可以使用此漏洞进行有效的利用。

我们迅速为该产品交付了一个补丁,让我告诉您。

我在JScript中造成并随后修复了更多的安全漏洞,但是没有一个漏洞比任何人都做得大。


81
可以说,这实际上是2个安全漏洞。另一个是如何在无需任何人注意/批准更改的情况下将代码获取到生产构建服务器上;-p
Marc Gravell

8
“没有充分的理由就签出了我的代码,更改了一堆安全性注册表项设置,将其重新签入,并且从未进行过代码审查或没有告诉任何人” –听起来对我来说无能听起来好像某人的恶意意图完全知道他们在做什么。
朱丽叶

80
“永远不要将恶意归咎于恶意。” -汉隆的剃刀
David R Tribble

15
没有一个授权用于整个Microsoft的源代码控制系统。如今,大多数团队都使用Source Depot或Team Foundation。毫不奇怪,Visual Studio产品团队通常使用Team Foundation。吃自己的狗粮,你知道的。
埃里克·利珀特

40
谁在上班之前检查ZDNet?
尼尔N

274

希望您能在这里找到问题所在。(实际上是非常错误的):

String emailBody = "";

for (int i = 0; i < subscribers.Count; i++)
{
    emailBody += "Hello " + subscribers[i].FirstName + ",";
    emailBody += "this is a reminder with your account information: \n\n:";
    emailBody += "Your username: " + subscribers[i].Username + "\n";
    emailBody += "Your password: " + subscribers[i].Password + "\n";
    emailBody += "Have a great day!";

    emailDispatcher.Send(subscribers[i].EmailAddress, emailBody);
}

最后一个收件人是最幸福的;)


226
您是在谈论存储纯文本密码的事实,还是从不清除emailBody的事实?我什至不确定哪个更糟。
克里斯托夫·普罗斯特

208
您是说不使用StringBuilder?:D(开个玩笑。)
ShdNx

58
@Kristof-我猜他的意思是最后一个用户将获得所有用户和密码的列表。:)
唐·布兰森

141
我绝对讨厌在注册过程中将我的密码发送给我的系统。这有两个缺陷:1.他们将我的纯文本密码存储在系统中的某个位置。如果不是他们的永久用户数据库,则肯定是他们的注册处理系统。2.它通过EMAIL(纯文本或HTML)发送,通过Internet上的邮件中继以SMTP方式发送。有很多中间人可以拦截这一点。至少,如果您觉得有必要向我发送包含安全信息的电子邮件,请允许我为您指定我的公共PGP密钥以对其进行加密!
Jesse C. Slicer 2009年

16
我曾经使用MD5哈希值来保护数据库中的密码。但是,在通过彩虹表运行结果并匹配大约50%的密码之后,我觉得这是添加盐的好时机。
Matthew Whited

206

旧的IBM System 36哑终端具有键盘组合,可以开始录制宏。因此,当终端未登录时,您可以开始录制宏并将其保留在该位置。下次有人登录时,击键将被记录在宏中,并且当记录了允许的最大键时,记录将自动结束。请稍后再返回并重播宏以自动登录。

替代文字


204

我见过的最严重的安全漏洞实际上是您的真实密码,导致Google Bot删除了我的整个数据库。

回到我最初学习Classic ASP时,我编写了自己的基本博客应用程序。带有所有管理脚本的目录已由IIS上的NTLM保护。有一天,我搬到一台新服务器上,忘记了重新保护IIS中的目录(糟糕)。

博客主页具有指向主管理屏幕的链接,并且主管理屏幕具有每个记录的DELETE LINK(未确认)。

有一天,我发现数据库中的每条记录都被删除(数百个个人条目)。我认为有些读者闯入该网站并恶意删除了每条记录。

我从日志中发现:Google Bot对该站点进行了爬网,跟随了管理员链接,然后继续跟踪所有的DELETE LINKS,从而删除了数据库中的每条记录。我觉得我当之无愧地被Google Bot意外地削弱了年度最佳Dumbass奖。

幸好我有备份。


13
猜猜它表明它是多么普遍。
si618

96
这就是为什么您应该始终发布以更改操作的原因。
递归

7
@recursive:是的,但是如果目录没有密码保护,它不会阻止人工删除所有内容。
DisgruntledGoat 2010年

2
我在预取链接的浏览器插件中遇到了这个问题。我曾经在一个博客网站上工作,当有一天,一个用户报告说她博客上的所有评论都会神秘地消失时,我们感到困惑。
马修

7
不,您不应该获得该奖项。如果发生了这种情况,而您没有备份,那您应该得到它。
瑞安·伦迪

187

我见过的最严重的漏洞是Web应用程序中的错误,在该错误中输入空的用户名和密码会以管理员身份登录:)


144
懒惰的开发人员的错误或功能?:)
si618

9
我看过这样的代码。这通常是因为用户查找使用了LIKE,如“ SELECT * FROM [User]其中,UserName LIKE'%” + userName +“%'”。并且由于管理员通常是数据库中的第一个用户,因此它将返回该用户。
Pierre-Alain Vigeant

11
你为什么要用用户名做一个LIKE?...所以当我想键入Adam时,我可以通过输入adm来进行管理
Matthew Whited 09/09/24

20
大多数公司会在锁定帐户之前给您三次尝试使用给定的用户ID登录。因此,使用三个错误的密码锁定其他人的帐户非常容易。
David R Tribble

3
我已经在许多对LDAP目录进行身份验证的公司Web应用程序中看到了这一点。在LDAP中,空密码将导致成功的 匿名登录。匿名用户不能做很多事情,但是使用此机制的Web应用程序并没有进行检查-他们只是假设“成功=正确的密码”!
SimonJ 2010年

174

一旦在网站的URL上注意到这一点。

http://www.somewebsite.com/mypage.asp?param1=x&param2=y&admin=0

将最后一个参数更改为admin = 1赋予了我管理员权限。如果您要盲目地信任用户输入,至少不要电报您正在这样做!


19
这是一个方便的功能;)您没看过WarGames吗?诸如“每个优秀的开发人员都会为其系统添加后门”之类的东西。
Alex

38
因此,也许他们应该使用&admin = JOSHUA
JohnFx

165

我在《每日WTF》中看到了这个。

<script language="javascript">
<!--//
/*This Script allows people to enter by using a form that asks for a
UserID and Password*/
function pasuser(form) {
    if (form.id.value=="buyers") { 
        if (form.pass.value=="gov1996") {              
            location="http://officers.federalsuppliers.com/agents.html" 
        } else {
            alert("Invalid Password")
        }
    } else {  
        alert("Invalid UserID")
    }
}
//-->
</script>

没有什么能击败这个恕我直言的。


21
我认为这可能不像您想象的那么愚蠢。这个微不足道的密码可能会像“是的,我来自联邦政府”按钮那样工作,不同之处在于,试图滥用该密码的人(如果被抓住)也可能因“提供虚假凭证”(或称其为假?)而受到起诉。 )
ilya n。

29
ilya:这是Javascript,因此对用户可见。看到这之后,你可以去officers.federalsuppliers.com/agents.html,绕过任何形式的控制。
Alsciende

68
不用担心,只要该网站拥有版权,数字千年版权法案(DMCA)就会提供100%的保护。您不允许“规避” Javascript。
史蒂夫·哈诺夫

13
@Steve Hanov:您对“规避”有一个有趣的定义,如果我在浏览器中键入该网址...甚至复制/粘贴它...我没有绕过任何东西,我只是在使用浏览器进入我在地址栏中输入的地址。这是Web浏览器的预期目的之一。
Powerlord

46
恭喜,您是无辜的,太可惜了,要说服陪审团花费30万美元
Dustin Getz

141

在没有名字的大学里,他们的所有行动查询都是通过URL传递的,而不是通过表格传递的。

在Google Bot出现并通过其所有URL并擦除其数据库之前,这种东西一直很有效。


18
良好的旧SQL注入设计。我已经使用了内置了“功能”的报表功能
。– ICodeForCoffee

18
@ICodeForCoffee:这里的SQL注入在哪里?这只是混淆GET与POST的目的。这是新手Web开发人员经常犯的错误。我记得曾经读过一篇有关此确切问题的每日WTF文章。
rmeador

如果Wikipedia遇到这个问题,那不是很早的版本吗?他们有可以还原编辑内容或其他内容的链接。
DisgruntledGoat

14
真正的问题是Googlebot可能会未经身份验证就擦除数据库。
MiffTheFox

34
希望他们能够从Google缓存中检索到它们。
fastcodejava

137

没有人感到惊讶的是,没有人提出社会工程学的知识,但是我对这篇文章感到反感。

简介:恶意用户可以购买几十个闪存驱动器,为它们加载自动运行的病毒或特洛伊木马,然后在深夜将这些闪存驱动器撒在公司的停车场中。第二天,每个人都出现在工作中,偶然发现了闪亮,糖果状,不可抗拒的硬件,并自言自语:“哇,免费的闪存驱动器,我想知道它里面有什么!” -20分钟后,整个公司的网络都关闭了。


69
自动运行是邪恶的。
Mark Ransom

22
@mmyers:禁止使用闪存驱动器不是一个好方法。中断自动运行/自动播放。
杰伊

10
前段时间阅读了另一种方法(从软盘时代开始)。在办公室的走廊中放置一张被引导感染了软盘的软盘,上面标有“会计数据-机密”,等待5分钟。不可抗拒!
罗德里戈

13
幸运的是,我始终可以从Linux Live CD启动并从那里检查闪存驱动器。
David Thornley,2009年

6
@Jay-不幸的是,有多少人会查看这些文件,然后双击它们“以查看它们的作用”?禁止是很多时候的必需品,因为人们没有思考。
JasCav 2010年


103

微软鲍勃
(来源:丹的20世纪Abandonware

如果您第三次输入密码错误,系统会询问您是否忘记了密码。

http://img132.yfrog.com/img132/8397/msbob10asignin15.gif

但是,除了保持安全性(例如继续提示输入正确的密码直到输入密码或在多次错误尝试后将您锁定)外,您可以输入任何新密码,它将替换原来的密码!任何人都可以使用任何受密码保护的Microsoft Bob帐户来执行此操作。

无需事先认证。他的意思是,User1可以通过以下方式更改自己的密码:只需三遍误输入密码,然后第四次输入新密码-无需使用“更改密码”。

这也意味着User1可以完全相同的方式更改User2,User3 ...的密码。任何用户都可以更改任何其他用户的密码,只需将其输入三次即可,然后在出现提示时输入新密码,然后他们便可以访问该帐户。

http://img132.yfrog.com/img132/9851/msbob10asignin16.gif


7
当计算机不是由域管理时,这与Windows本身的行为相同。即使在Windows Vista Ultimate上,您也可以随时重置密码。我猜想拒绝服务比未经授权的访问被认为是更大的威胁。特别是因为无论如何只要将驱动器重新安装到其他地方就可以获得最多的东西。我相信这种情况下密码的目的是为了进行入侵检测,而不是预防。
Jeffrey L Whitledge,09年

1
@Jeffrey:事情是,一旦戴黑帽的人可以进入身体,那几乎就是“游戏结束”。如果要防止这种情况,则需要进行严格的加密(以及扫描硬件和软件键盘记录程序的方法等)。
David Thornley,2010年

8
比我聪明的人指出,这只是好的威胁建模。“鲍勃”是在非联网时代用于家庭使用的,与一些小偷相比,您的FAR更有可能遭受来自妹妹或宿醉的DOS攻击。鲍勃告诉您,您的帐户已被访问(因为您的旧密码不再可用),但没有尝试做更多的事情。
bgiles 2010年

20
我妻子刚刚看到我看着这个……她:“哦,天哪!那是什么节目?!” 我:“ ...微软鲍勃?” 她:“我微软的鲍勃!” 感叹 ……
Tim Goodman 2010年

10
@ChristianWimmer-听起来有点像给人们一个标有“降落伞”的背包,这样他们就习惯了背上的感觉,但是却没有告诉他们那里没有降落伞。
JohnFx

102

我有乔X的故居地址,需要知道他在同一个城市的最新地址,但无法联系他。我以为他每天都会收到一堆平常的邮购目录,所以我随便给See's Candies(而不是Victoria's Secret,Swiss Colony或任何其他大邮件)打电话给800号:

我:“您好,我叫JoeX。我想您已经两次在我的旧地址和新地址上将我列入您的邮件列表。您的计算机在[旧地址]或[假地址]上显示我吗? ?

接线员:“不,我们给您显示[新地址]。”


36
啊,一定喜欢社会工程学。安全的人文方面通常是最薄弱的。
EMP 2010年

在英国,您已被承认犯有刑事罪行- “未经数据
管理员

95

给予1 = 1的文本框列出了所有用户在系统中。


325
鲍比表的问候。
Gumbo

4
@Gumbo的评论怎么能比答案高4倍?
Lie Ryan

12
简而言之,投票赞成该问题的人数是投票赞成意见的人数的4倍:/
RobertPitt

4
Bobby Tables评论的221位赞成者中的一位会告诉我们其他人到底是什么吗?
kirk.burleson 2010年

15
@ kirk.burleson:xkcd.com/327
gspr

76

作为生活的应用程序安全顾问,有许多常见问题,这些问题使您可以通过某种方式在网站上进行管理。但是真正很酷的部分是,当您可以购买价值一百万美元的袜子时。

这是我的一个朋友,从事这项工作,但要紧的是,某个现在非常流行的在线书店(以及其他所有商店)中商品的价格被存储在HTML本身中作为隐藏字段。早在早期,这个漏洞在许多在线商店中就出现了,他们才刚刚开始了解网络。几乎没有安全意识,我的意思是说真的是谁将下载HTML,编辑隐藏字段并重新提交订单?

我们自然将价格更改为0,并订购了100万双袜子。您也可以将价格更改为负,但是这样做会使他们的后端计费软件缓冲区的某些部分溢出,从而结束了交易。

如果我可以选择另一个,那将是Web应用程序中的路径规范化问题。能够执行foo.com?file=../../../../etc/passwd真是太好了


9
太棒了,您再也不会缺少左袜子!
2009年

75
你有袜子吗?
Alex Barrett

32
订单处理完毕,履行系统通知仓库。我们意识到这可能有效,并告诉我们的联系点他们应该停止订单。显然,稍后,一位仓库经理打电话询问有关该订单的信息,以确保该订单是真实的。他明智地认为这是软件错误。
Collin

27
@StuperUser,当然,靠你的脚。
斯特拉格

12
存储没有问题,只需破解宜家网站即可订购100,000套抽屉即可
Neil Aitken

64

意外地将数据库根密码提交给源代码管理。这很糟糕,因为它是Sourceforge上的源代码控制。

不用说,密码很快就被更改了。


144
好的,密码很快就被更改了……但是是
Eamon Nerbonne 09年

1
走这条路。许多系统(如Django的,例如)实际上是鼓励这一点,因为他们要求你把你的数据库密码进入设置文件,这自然是很容易办理入住手续。
mlissner

56

重要IT员工离开公司后,请勿更改管理员密码。


1
或保留出厂默认设置,例如admin / admin(以及特别是在硬件中)...
Gnark

47
我有一个糟糕的-我离开已经愚弄后的大学,与目录告诉我,他们为我创造了一个档次较高的工作,我已经毕业之后,但后来我发现,他告诉我的经纪人,他们来让我升职。不用说,我对此不满意。我专门告诉我的经理更改我可以访问的每个密码。离开的第二周,我从经理那里收到了一封电子邮件,其中包含根密码,“以防万一我需要它”。我联系系统管理员以确保再次更改它,因为如果发生问题,我不想跌倒。

10
@二年级学生:我记得费曼的传记中他评论说,许多存放曼哈顿项目机密的超安全超级保险箱都保留在默认组合中。
布赖恩

12
我可以想象一个苏联间谍进入保险柜,并尽一切努力想破解保险柜,“该死!我无法破解。如果我能...为俄罗斯母亲!”
埃里克

3
读这篇文章时不能笑,我夏天在一家著名的瑞典公司担任IT技术员,几年后我回去担任工程师时,在安装某些软件时遇到了一些问题。我出乎意料地记住了旧的管理员密码,瞧!它奏效了=)
Viktor Sehr 2010年

50

尽管这不是我见过的最严重的安全漏洞。但这至少是我发现自己最糟糕的情况:

一家相当成功的有声读物在线商店在成功认证后使用cookie存储当前用户的标识信息。但是您可以轻松地更改Cookie中的用户ID并访问其他帐户并在其上购买。


哇...我在继承的ASP代码上发生了确切的事情。
Radu094

我维护的应用程序存在此确切问题。可以肯定的是,它在修复列表中排名很高。幸运的是,这不是一个电子商务网站。
quentin-starin

12
这种情况的发生频率比大多数人想象的要高。
NotMe 2010年

47

就在.com时代开始之初,我在一家大型零售商工作。我们的竞争对手比我们早几个月推出了在线商店,我们对此非常感兴趣。当然,我们去尝试一下...并很快意识到我们的购物车混在一起了。经过一段时间使用查询字符串,我们意识到我们可以劫持彼此的会话。把握适当的时机,您可以更改收货地址,但不用理会付款方式...在您将购物车中装满您喜欢的物品之后,所有这些都将成为可能。


当然,这意味着您实际上已经恶意地采取了一些措施,以诱使他们将商品欺骗性地发送给您,并告诉他们您的地址。
David Thornley,2009年

6
是的,这就是使其成为主要安全漏洞的原因。我们实际上并没有按下“购买”按钮,但是我们可以这样做。而且,根据新闻报道,有些人做到了。
Eric J.

45

当我第一次加入我目前工作的公司时,我的老板正在寻找一个潜在的新客户的现有电子商务网站。这是在IIS和电子商务都还处于初期的阶段,我们可以说,安全性还不那么严格。

长话短说,他出于好奇而更改了一个URL,并意识到没有关闭目录浏览功能,因此您可以将页面名称从URL的末尾删除,然后查看URL上的所有文件。网络服务器。

我们最终浏览了一个包含Access数据库的文件夹,该文件夹已下载。它是整个电子商务客户/订单数据库,其中充满了数千个未加密的信用卡号。


1
这是将近十二年前,当时数据驱动的网站是一种新颖的事物。许多网站都遇到了Access或类似网站的竞争,因为没有人愿意投资SQL Server许可证来购买某种被视为对其核心业务“不利”的东西。事情如何改变!
Mark Bell


44

我13岁那年,我的学校为学生们建立了一个社交网络。不幸的是,他们发现了一个安全漏洞,您可以在其中将URI更改为另一个用户ID,例如“?userID = 123”,并为该用户登录。显然,我告诉我的朋友们,最后学校的社交网络充满了色情。

虽然不会推荐。


3
您为什么不推荐这个?发生了什么?
Simon_Weaver 2010年

55
@Simon_Weaver:我想13岁的孩子通常对色情片不感兴趣。
悠闲的

@slacker +1使您获得1000 rep!除了我不认为评级评论会给您代表:-(
Simon_Weaver 2010年

2
“色情品味不错”-有矛盾之处。
Zann Anderson

43

我认为到目前为止,超级用户访问的空白用户名/密码字段是最糟糕的。但是我看到的一个是

if (password.equals(requestpassword) || username.equals(requestusername))
{
    login = true;
}

太糟糕了,一位操作员会带来如此大的改变。


10
哇,我自然
很想

使用真实密码而不是哈希的事实实际上也很糟糕……
Peter Kriens 2012年

首先我是“怎么了?”,然后我是“ AAAAaaaaaaaAAAA!OMG”
Bojan Kogoj 2012年

42

我的将是我曾经是客户的银行。我无法登录,所以打电话给客户服务。他们问我我的用户名,没有别的-没问任何安全性问题或试图验证我的身份。然后,他们没有将密码重设发送到他们所保存的电子邮件地址,而是问我要将其发送到哪个电子邮件地址。我给他们提供的地址与我存档的地址不同,并且可以重设密码。

因此,从本质上讲,黑客所需的只是我的用户名,然后他便可以访问我的帐户。这是针对一家大型银行,美国至少90%的人会听说过。这发生在大约两年前。我不知道这是不是训练有素的客户服务代表,还是这是标准程序。


22
请问是哪家银行?
TigerTiger

5
@Si:它写着“我是...的客户”。我认为这回答了问题。:)
ShdNx

8
这是华盛顿互助银行,被联邦存款保险公司(FDIC)占领,并于今年年初出售给大通银行。他们也有奇怪的错误信息。当我尝试从临时密码设置密码时,即使输入的密码相同,我仍然收到“密码不匹配”的错误,甚至我复制/粘贴了密码。我意识到,如果我将“无效字符”放在正斜杠之间,而不是说出无效字符,则会给我其他信息。
肖恩

11
@伊丽莎白:嗯...你意识到这是为了防止网络钓鱼吗?如果有人尝试复制或模仿银行网站,则其外观可能完全相同,但是大概他们没有访问数据库的权限,因此他们无法提取正确的安全图片。这就是为什么在那里。并非所有用户都足够聪明来检查证书(可能同样
被骗了

13
保护您的财务帐户是过大的?...
乔·菲利普斯

36

我将分享我创建的一个。有点儿。

几年前和几年前,我在一家公司工作,希望在其ASP网站上建立索引。所以我就去建立索引服务器,排除了一些管理目录,一切都很好。

但是我不知道有人给销售人员ftp访问Web服务器的权限,以便他可以在家工作,这是拨号的日子,这是他交换文件的最简单方法....然后他开始上传内容,包括详细说明我们服务上的标记的文档。...当人们搜索“费用”时,索引服务器已建立索引并开始提供服务。

记住孩子,白名单而不是黑名单。


76
我认为“白名单而非黑名单”虽然通常是很好的建议,但不是在这里学习的正确课程。正确的教训是“不要将私有数据放在公共服务器上”。另外,“不要让销售人员访问服务器”。
rmeador

7
哦,答案和头像之间的和谐。
Çağdaş特勤

35

最简单但真正值得的成本之一是:

使用PayPal之类的引擎的支付系统可能存在缺陷,因为在付款成功后不会检查PayPal的响应。

例如:

我可以去一些CD购买网站,并在购物车中添加一些内容,然后在结帐阶段,页面上通常会有一个表格,其中已填满用于Paypal的字段,以及“付款”的提交按钮。

使用DOM编辑器,我可以进入的形式是“活的”,更改从价值£899.00£0.01,然后点击提交...

当我在PayPal方面时,可以看到金额为1便士,因此我付了钱,并且PayPal将一些参数重定向到初始购买站点,该站点仅验证诸如payment_status=1等的参数,而不会验证验证付款金额。

如果他们没有足够的日志记录或自动分派产品,那么这可能会很昂贵。

最糟糕的网站是提供应用程序,软件,音乐等的网站。


12
+1同意。在托管支付页面的情况下,原始网站不应允许用户驱动要发布的值;相反,该页面应在用户单击后发回其自身,然后服务器制定适当的值,然后直接将后操作发送到付款“网关”。这完全取决于网关的期望以及如何与之进行交互,但是我看不到任何值得赞扬的网关都没有比您所描述的更安全的方案。也许我错了。
约翰·K

您可以通过服务器端模拟发布请求,因此以这种方式发送数据,可以确保发送到网关的数据完全相同,然后使用location标头重定向它们。
罗伯特·皮特(RobertPitt)2010年

贝宝(PayPal)具有加密选项,可让网站阻止这种情况。该站点首先将数据回传给自身,使用仅对他们和PayPal已知的密钥对订单数据进行服务器端加密,然后将该数据发送给对数据进行解密的PayPal。未加密的订单数据永远不会以这种方式在表单字段中发送。不过,这只是一个选择,因此并非每个使用PayPal的网站都这样做。他们应该!
mikel 2010年

35

一个在线文档管理器怎么样,它可以设置您可以记住的每个安全权限...

直到您进入下载页面为止... download.aspx?documentId = 12345

是的,documentId是数据库ID(自动递增),您可以循环访问每个数字,任何人都可以获取所有公司文档。

当收到有关此问题的警报时,项目经理的答复是:好的,谢谢。但是以前没有人注意到这一点,因此让我们保持原样。


56
我真的很讨厌这种态度,已经经历了几次。让我想让其他人去做,仅是为了教他们一堂课。
syaz

经过数月的抱怨之后,我终于在上一份工作中得到了填补这个空白的机会。
眼睑失明

找到让您做到这一点的网站并不少见。您会看到一个最近的文章或已归档文章的目录,但是如果没有登录就不能返回列表中的一两页。只需打开第一篇文章,然后将url中的正确参数更改为任何帖子即可您想看到任何文章的编号。
bob-the-destroyer

2
这是一个很好的例子。在《纽约时报》的这篇文章中:nytimes.com/2009/01/14/dining/14power.html?_r=1&ref=dining显示的图片是对更搞笑的原始版本的替代,该版本仍在这里提供:graphics8.nytimes.com /images/2009/01/14/dining/14power2_650.jpg
Jamie Treworgy 2010年

34

挪威提供的比萨饼有一个安全漏洞,您可以在其崭新的互联网门户上订购量的比萨饼,并免费获得。


42
另一个安全漏洞是员工,对吗?“先生,计算机说您免费获得15个披萨,所以...您来了!...我给了小费吗?”
内森·朗2009年

6
...您的披萨店也分发DVD吗?Oo
mpen

5
作为一名前披萨车司机...不,我们没有给这类东西做过麻烦。我们的经理也没有。
眼睑失明

48
送货员会不会过来收集出售的披萨?
乔恩·B

7
哇..送货员必须给你小费吗?=))
AndreiRînea10年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.