Security

客户端应该去计算什么?

| Security | #performance | #scalability

这是一个很有意思的话题:随着计算机技术的发展,客户端的计算能力越来越强。想要提高在服务器端运行的系统的负载能力,最直接有效的办法就是把计算任务尽可能交给客户端去做,并减少两者之间的交互;然而,另一方面,这样做又可能会带来一些其他问题,例如,客户端完成某些计算任务的时候可能会比较慢(因为在客户端可以用到的资源比较少,想要保持兼容性最好的办法就是只使用普适的Java Script子集),或者,作为安全系统的一个最基本的原则,任何来自外界的数据都是不应被信任的,等等。

阅读全文…( 本文约 999 字,阅读大致需要 2 分钟 )

为什么重复free()比内存泄漏危害更大

| Security | #FreeBSD | #malloc | #security

C程序设计中,内存操作相关的错误可以说是最常见,同时也是非常隐蔽的一类错误。这类错误往往导致程序莫名其妙地崩溃、耗尽系统资源,或是形成严重的安全弱点。

阅读全文…( 本文约 1142 字,阅读大致需要 3 分钟 )

NULL指针引用和内核bug的利用

| Security

总算是发公告了,可以说具体的事情了。

FreeBSD昨天发布了2项安全公告和1项Errata Notice:SA-09:13.pipeSA-09:14.devfsEN-09:05.null。两个安全公告修正的是同一类问题,也就是我们常说的多线程程序中的竞态条件(Race Condition);EN-09:05.null则是增加了一个使这类问题不再那么容易被利用达到特权提升目的的功能,但默认并不启用。

阅读全文…( 本文约 1197 字,阅读大致需要 3 分钟 )

ZFS实现快速部署(作弊条)

| Security | #FreeBSD | #ZFS

FreeBSD从8.0开始支持从ZFS引导系统,因此,可以使用ZFS的快照功能来实现快速部署。

新机器使用LiveFS启动,Fix it,CDROM。

阅读全文…( 本文约 496 字,阅读大致需要 1 分钟 )

SYNCookie反制

| Security | #TCP vulnerability

最近看到一个很有意思的攻击。记一笔。

针对 SYN Flood 攻击(特点是攻击者发出大量 SYN 请求,但并不完成 TCP 握手),目前操作系统会采用 SYNcookie 予以反制。FreeBSD上的实现是在系统资源充足的时候采用标准的握手机制,而当发现存在可能的攻击(即可用的 TCP 状态资源不足时)应用 SYNcookie;SYNcookie是将TCP状态建立推迟到三次握手 之后,具体做法是将服务器本地的一个秘密数据与来源/目的IP、端口编码来形成序号来发出SYN+ACK,并在收到对方回应ACK时验证这个序号的真实性。

阅读全文…( 本文约 492 字,阅读大致需要 1 分钟 )

DNS和MX的冗余

| Security

一般来说DNS和MX都需要做冗余。前者的冗余和容灾要求要高于后者。

DNS的冗余通常需要做到跨ISP,甚至跨大洲。由于安全和性能方面的理由,提供权威DNS解析的服务器都不应同时作为缓存DNS服务器;此外,实践上权威DNS服务器应该是受保护的管理服务器的slave,而不应直接在权威DNS服务器上操作(读、写分开),这样可以有效减少由于修改操作所导致的downtime。

阅读全文…( 本文约 279 字,阅读大致需要 1 分钟 )

不按牌理出牌的无线网络

| Security

今天到了Seattle,在一家很便宜的酒店住下。酒店发给我一张密码卡,用来上那里的无线网。摆弄了几下发现:

加密模式是open,所以需要自己加密数据了。

阅读全文…( 本文约 181 字,阅读大致需要 1 分钟 )

Windows 2000的时间服务

| Security | #timekeeping

两年前我在一篇blog中解释了 为什么应该用 ntpd 而不是 ntpdate 来对时间。今天整理旧机器的时候观察了一下Windows 2000 Server的行为。

首先关闭时间服务(Windows Time Service),设置sntp(net time /setsntp:“time-a time-b”,然后把时间人为调快2分钟,然后启动时间服务。

阅读全文…( 本文约 251 字,阅读大致需要 1 分钟 )

Cisco Catalyst 3560交换机密码恢复

| Security | #3560 | #Cisco | #IOS | #password recovery

记一下备忘。其实跟单用户模式差不多……

首先用console确认一下是否真的不能登录。

断电,启动交换机,按住面板上的MODE键,SYS指示灯会闪烁,到绿时松手。在console上看,此时会给出switch:提示符。

阅读全文…( 本文约 473 字,阅读大致需要 1 分钟 )

DNS安全:投毒攻击与缓存服务器的配置

| Security | #BIND | #DNS | #Security

DNS是目前互联网上使用最为普遍,同时也是漏洞很多的一个协议。DNS投毒攻击(Poisoning)是一种比较常见的攻击手法,具体而言,通常一台 DNS 缓存服务器能够影响大量的客户机,通过投毒攻击,能够使得大量用户访问某个具体域名时得到不正确的结果(例如,钓鱼网站,等等)。

阅读全文…( 本文约 1115 字,阅读大致需要 3 分钟 )