我的blog一般很少涉及到自己的工作相关内容,这篇可算例外,背后是一笔笔的血泪史啊(不是我的,客户们的)。
我们这个小小的公司,做了一款小小的软件。
在开头的几年里,它的部署非常简单,装完我们就可以拍拍屁股走人了。
到了前2-3年,事情慢慢变得复杂,我在装软件的同时,经常会顺手先给客户把Webshell(网页型的木马)挑干净,删掉一些有问题的默认例子(比如eWebeditor,超过30%的概率默认例子并未删除),给服务器的配置做点基本的安全加固(IIS和Apache里顺手能做的改进很多,但就是很多网管或集成商完全不注意) —— 这些事情花的时间甚至远超过软件本身的部署(基于我对抓小虫子的兴趣,俺还是做得很津津有味的)。这类事情在学校和企业的网站里简直比比皆是 —— 完全可以夸口,俺就没见过未被黑过的高校网站!政府网站有时候也不见得好到哪里去,比如见过某县级市的网站,被人放了整个运营的黄色站点在上面都不知道!
再到最近1年,事情就更多了。有时候被人拉去看他们的服务器,客户会很委屈地说,我把网站服务数据库服务都停了啊,怎么还是给人加了非法用户。确实,你能把门看得死死的,可别的位置到处都是窗啊洞啊的。比如啥没打补丁,被人MS08-067攻击啦;比如Tomcat的deploy后台管理员密码居然为空(还沪上某著名集成商干的活还不止一次);比如某著名医院的网站服务器,竟然成为抓鸡工具,24小时地运行着各款抓鸡扫描程序而不自知 ,上面的远程控制软件和抓鸡工具之丰富,简直是开眼了... ...
至于和网站相关的,就更是花招百出,令人叹为观止了。比如:
* webshell 的免杀已经越写越花哨,有的就直接用一个个字符拼起来,然后再怎么exec一下,有的伪装成系统正常的文件名,啥md5.asp之类,几乎没有啥万全之策彻底找出它们。我写了个grep+正则的搜索,误报极多,但至少不太会漏,慢慢排除就是了;
* 比如sql注入,啥变型都有,加各种干扰符号的,换各种Method的,GET/POST/HEAD里传参数还不算,还要在Cookie里(万恶的IIS啊!)弄,还各层编码转换,简直是。。。
* 比如挂马的脚本,也是越写越花哨,啥URL的加密编码都算简单的,还加各种随机参数,让你没法简单的用批量替换把恶意代码清理掉(我只能用ultraeditor的正则表达式替换法清理);
... ...
我的Google Reader里,可能有1/3的肉丝都和安全有关,其实我完全看不过来,多半就看个标题,至少知道现在有啥新的流行趋势,生怕漏过一些重大的漏洞。结果就是碰到的问题越多,看到的安全漏洞越多,越感慨:安全这东西基本上就是个无底洞,万全之策基本上是个空想。世上只有安全的意识,并没有安全的产品啊!
评论 (4)
呵呵 一不小心成搞安全的了,建議danzhu干脆為客戶提供安全評估增值服務:p
由 七生 | 2009年06月23日 夜间02时01分
发表于 2009年06月23日 02:01
恩,其实我经常有感觉,我们是卖的产品附送服务,或者也可能,客户就是买的服务,不过是用产品在某些方面协助一下而已。
由 danzhu | 2009年06月23日 上午10时29分
发表于 2009年06月23日 10:29
3月份的新发现杂志的主打文章是“互联网崩溃”,给我们这些完全不懂行的人普及了一把。看完觉得很恐怖,互联网原来那么岌岌可危啊。。。文章里说安全就是个最难解决的问题,因为最早设计时完全没考虑到会膨胀成今天这个样子。
由 小克 | 2009年06月23日 上午11时35分
发表于 2009年06月23日 11:35
是的,越了解那些网站的内部,就越担心它们的安全问题。很多安全问题,都是出了事之后才处理,很少能做到防患于未然。
由 danzhu | 2009年06月24日 夜间12时39分
发表于 2009年06月24日 00:39