娱乐

漏洞知识

时间:2010-12-5 17:23:32  作者:焦点   来源:百科  查看:  评论:0
内容摘要:2014年4月7日,OpenSSL项目组收到一封邮件。发件人是芬兰安全公司Codenomicon的工程师,附件里只有一行测试代码。就是这行代码,让全球三分之二的HTTPS服务器在随后48小时内紧急打补

2014年4月7日,漏洞知识OpenSSL项目组收到一封邮件。漏洞知识发件人是漏洞知识芬兰安全公司Codenomicon的工程师,附件里只有一行测试代码。漏洞知识就是漏洞知识这行代码,让全球三分之二的漏洞知识HTTPS服务器在随后48小时内紧急打补丁。这个漏洞后来被命名为"心脏出血"(Heartbleed)。漏洞知识

漏洞的漏洞知识本质是什么?说白了,就是漏洞知识程序在运行时做了它不该做的事。写代码的漏洞知识人假设用户会乖乖输入姓名,结果对方塞进来一段能覆盖内存的漏洞知识字符串。这种"假设"和"现实"之间的漏洞知识缝隙,就是漏洞知识漏洞的藏身之处。

我见过一个特别典型的漏洞知识例子。某电商网站的漏洞知识优惠券接口,前端限制每个账号只能领一张。但抓包重放请求时,把用户ID改成别人的,照样能领。开发者的逻辑是"用户不会改请求",攻击者的逻辑是"我偏要改"。这种漏洞连代码都不用读,纯粹靠观察就能发现。

缓冲区溢出算是最古老的漏洞类型之一。C语言里,你声明一个长度为10的数组,却往里塞了15个字符,多出来的5个字符就会覆盖相邻内存。如果那块内存恰好存着函数返回地址,攻击者就能把地址改成自己写的恶意代码入口。1988年的莫里斯蠕虫就是靠这个在互联网上横冲直撞,当时整个网络才6万台机器,它感染了6000台。

SQL注入又是另一回事。用户输入框里填个 ' OR '1'='1,后端拼接SQL语句时没做转义,数据库就把整张表吐出来了。2011年索尼PSN被黑,7700万用户数据泄露,根源就是SQL注入。事后索尼被罚了1500万美元,但用户信用卡信息早就在黑市上流通了。

跨站脚本(XSS)更隐蔽。你在评论区发一段 <script>alert(document.cookie)</script>,如果网站没过滤,其他用户打开页面时这段脚本就在他们浏览器里执行了。攻击者能偷走session cookie,冒充受害者登录。2005年MySpace的Samy蠕虫靠XSS在20小时内感染了100万个账号,作者Samy被判处三年缓刑加社区服务——他当时才19岁。

漏洞不等于病毒。病毒是恶意软件,漏洞是软件本身的缺陷。病毒利用漏洞传播,但漏洞独立存在。一个漏洞从被发现到被利用,平均时间在2015年是15天,到2020年缩短到不到5天。自动化扫描工具和漏洞利用套件(exploit kit)让攻击门槛低到令人发指。一个脚本小子下载个工具包,就能扫出一堆未打补丁的机器。

补丁管理是另一场噩梦。企业内网上千台机器,测试环境、生产环境、老旧系统混在一起。2017年WannaCry勒索病毒爆发时,微软其实在两个月前就发布了MS17-010补丁。但英国国家医疗服务体系(NHS)大量机器还在跑Windows XP,根本没打补丁。结果80家医院瘫痪,19000台手术取消。漏洞本身不致命,不打补丁才致命。

写代码的人永远在假设"用户会按规矩来"。攻击者恰恰不按规矩来。这种认知错位不会消失,只会随着系统复杂度增加而变多。每一行代码都是潜在的漏洞,区别只在于有没有人去找。

最近更新
热门排行
copyright © 2026 powered by 力不从心网   sitemap