📄 0240network-secure-1.htm
字号:
的 logwatch ,不过毕竟该套件并不见得适合所有的 distributions ,所以 VBird尝试自己写了一个 logfile.sh 的 shell script,目前在 Red Hat, Mandrake,及 Openlinux 都可以进行登录档的分析呢!您可以在底下的网址下载该程序:<a href="http://linux.vbird.org/download/index.php#logfile">http://linux.vbird.org/download/index.php#logfile</a></ul> <br>好了,底下我们来谈一谈几个常见的 Cracker 攻击手法。</ul><hr width="100%"><a name="attack"></a><font size="+1" color="#000099">一些常见的攻击手法:</font><ul>粗略了解了 TCP 封包如何进入到本机之后,再来我们先提供几个可能的入侵方法,然后才来聊一聊怎样防备我们的主机呢:<br> <ul><li><font color="#000099">使用工具程序入侵您的主机:</font></li><br>千万不要怀疑,目前网络上面有太多的入侵侦测型态的攻击软件了!只要您主机上面的防护作的不够好,他就可以经由攻击软件提供的功能,取得您主机上面的root 权限,并进一步操纵您的主机!并且,为了怕被您的一些工具程序发现他的PID,所以一般来说,他会去修改您的主机里面的几个档案,例如:who, w, last,top, ps, netstat, find 等等,让您永远找不到他是否在您的系统当中!怕了吧?!不过,这些工具程序主要都是利用『<font color="#000066">您的Linux distribution 所提供的套件的漏洞</font>』来设计的,咦!为什么各主要的distribution 要提供有问题的套件啊!?呵呵!并不是这样的啦,因为当一个新版的Linux distribution 释出后,他就会开始接受 Internet 的检验,很多的『盈盈美黛子』(台语,闲闲没事干之意)就会分析该distribution 所提供的套件是否有漏洞来让他们有可趁之机?!如果发现了 distribution提供的套件有漏洞,功力高强的就会写成黑客软件,然后只要有人拿到该软件,嘿嘿!您晓得会发生什么事了~<b><font color="#000066">所以啰,当您安装了Linux 之后,立刻请进行套件升级啊!才能避免被这一类的工具程序所害</font></b>!(<i><font color="#000066">很多人都会问到说:咦!怎么Linux 这么多漏洞啊?!好可怕?!其实,目前每一套操作系统上面都有很多的漏洞的,例如您可到Windows 的漏洞通报网站:<a href="http://www.microsoft.com/taiwan/download/" target="_blank">http://www.microsoft.com/taiwan/download/</a>就能知道为什么了!所以,安全防备并不止于Linux 系统,如果您刚刚完成 Windows 系统的安装,最好也是要立刻到 Windows所提供的 update 网站去更新 Windows 的套件啊!</font></i>)<br> </ul><ul><li><font color="#000099">蠕虫或木马程序 ( Trojan horse ):</font></li><br>取自木马屠城记的意思,木马程序会主动的将您的主机开一个后门 ( 可以想成是port 被启动了),让攻击者可以轻轻松松的进出您的主机呢!那么木马程序怎么会在您的系统上面呢?很简单呀!如果今天您下载了一个不明程序,而且就安装了他,他就可能会常驻在您的内存当中了!所以不要随意安装不明来源的档案,或者是不要随意安装不明网站的档案呀!例如前一阵的那个有名的某个软件,在自家的网站上面还被放置了有木马的程序在原套件中~呀!真可怕~那么计算机蠕虫是什么?其实他也是一支程序,可以透过自我繁殖来感染其它网站或网域内的主机,最可怕的是,因为他会自我繁殖,并且会大量的发送封包到某个地方去,因为大量发送封包,所以就会占用到整个网络媒体的频宽,哇!网络就会停顿的厉害了!例如前2001-2003年间相当有名的Nimda 与 Code Red 病毒,会让您的网络频宽被吃光光!!<b><font color="#000066">要避免这类型的攻击,那就不要随便下载不明的档案,并且,下载的档案如果原始网站有提供MD5 的信息,那就务必以 <a href="http://linux.vbird.org/linux_basic/0520rpmtarball.php#md5sum">md5sum</a>这个指令来检验该软件是否被修改过,然后才能比较放心的安装喔!</font></b><br> </ul><ul><li><font color="#000099">DoS 攻击法 ( Denial of Service ):</font></li><br>这类型的攻击中文翻译成『<font color="#000066">阻断式攻击</font>』,这种攻击法也很要命,而且方法有很多,最常见的就属SYN Flood 攻击法了!还记得我们在<a href="http://linux.vbird.org/linux_server/0110network_basic.php#packet_transfer">网络基础</a>里面提到的,当主机接收了一个带有SYN 的 TCP 封包之后,会随机开启一个大于 1024 的 port ,并且发送出回应封包(带有 SYNACK 旗标的 TCP 封包),并等待 Client 端的再次回应。好了,在这个步骤当中我们来想一想,如果cient 端在发送出 SYN 的封包后,却将来自 Server 端的确认封包丢弃,那么您的Server 端就会一直空等,而且 Client 端可以透过软件功能,在短短的时间内持续发送出这样的SYN 封包,那么您的 Server 就会持续不断的发送确认封包,并且开启大量的 port在空等~呵呵!等到全部主机的 port 都启用完毕,那么.....系统就挂了!这种DoS 的攻击手法比较类似『玉石俱焚』的手段,他不是入侵您的系统,而是要让您的系统挂点呢!<br> </ul><ul><li><font color="#000099">IP 欺骗:</font></li><br>这个是比较高竿的人搞出来的把戏,他把送到您主机的封包的文件头数据改过了,并宣告成为您内部网络的一份子!如果您没有挡掉这样的封包的话,那么通常就会变成『接受他』!结果就是对方又可以轻而易举的进入您的主机了....唉!真难防~<br> </ul><ul><li><font color="#000099">Port scan:</font></li><br>这个最讨厌了!因为目前很多的 distribution 为了自身测量自己的漏洞,都会附上类似<a href="http://linux.vbird.org/linux_server/0210port_limit.php#nmap">nmap</a>这一类的扫瞄软件!这种软件自己玩自己还无所谓,可以检查一下自己的主机开了哪些port !但是一旦被使用来攻击别人的主机,那可就不好玩了....如果您有这种机会的话,也不要随意去侦测别人的主机呦!很是危险呢!<br> </ul>当然,攻击的手法还不只如此,这里仅不过列出一些比较常见的攻击手段而已~而由上面的攻击手段看起来,呵呵!<font color="#000066">套件的升级应该是最重要的预防工作了</font>!</ul><hr width="100%"><a name="secure_basic"></a><font size="+1" color="#000099">主机防护计划:</font><blockquote>在网络上面( 尤其是 BBS )最常听到的就是这样的哀嚎声音:『<font color="#000066">阿!!救命哪!我被入侵了!要怎么办?</font>』真是伤脑筋的很!我也不知道要怎么帮助您呢!因为这真是......『自作自受』吶!一些老人家常常在讲,架设一个『网站』很容易,因为目前的在线教学实在是太多了,市面上的『教战手册』之类的书籍也真是多如过江之鲫,然而,大家都只知道『我要架设网站』却不知到『<font color="#000066">我要架设的是一个安全的网站</font>』,这就是我们老人家的心声哪!因为『<font color="#000066">架设一个安全的网站,真的很难....</font>』!其中,维护的心力更难哪!为什么呢?由上面的TCP/IP的封包路线图,我们可以发现,嘿嘿!目前的入侵您的主机的管道实在是太多了!而一个良好的防火系统又不是只要上述的其中一层就可以做好的!而是复合式的整体规划,并且要『持续不断的』监测您的主机系统,才能够较为完善的保护好您的主机呢!唉~还真是不容易吶!底下我们来谈一谈,如果由主机内部到外部来规划,要怎样来加强主机的安全性呢?</blockquote><blockquote><ol><li><font color="#000099">建立完善的登入密码规则限制:</font></li><br>要做好主机的防护,<font color="#000066">第一步就是要建立完善的密码规则啦</font>!因为这个咚咚常常是cracker 尝试入侵的第一步!您必须要建立好主机的密码规则,请参考 <a href="http://linux.vbird.org/linux_basic/0410accountmanager.php">鸟哥的linux 私房菜--基础学习篇之账号管理</a> 那一篇文章,里头提到的<a href="http://linux.vbird.org/linux_basic/0410accountmanager.php">/etc/shadow</a> 档案格式,还有 /etc/login.defs 这个档案的内容,都是相当重要的密码规则订定的所在!另外,有些cracker 软件会利用套件的漏洞而主动的在您的系统上面新增一个可以让远程 cracker登入的账号,所以,如果您的账号更动并不会很频繁时,可以尝试以<a href="http://linux.vbird.org/linux_basic/0220filemanager.php#chattr">chattr</a>来将 /etc/passwd 及 /etc/shadow 做成不可变更的档案!较为安全啦!<br> <li><font color="#000099">完善的主机权限设定:</font></li><br><font color="#000000">换个角度来想,如果搞破坏的人是您系统上面具有可以登入的使用者呢?呵呵!那么主机的权限设定就显的相当的重要了!还记得<a href="http://linux.vbird.org/linux_basic/0220filemanager.php#suid_sgid_sticky">SUID与 SGID</a> 吧!?如果您的系统上面具有很多这样权限的执行档,那么一般身份的使用者就可以很轻易的取得系统管理员的执行权限了!很麻烦的~所以,主机的权限需要好好的管理,千万不可掉以轻心~</font><br><font color="#000000"> </font><li><font color="#000099">升级与修补套件漏洞、及移除危险套件:</font></li><br>这个真的相当的重要的!那就是因为您的服务套件的安全性啦!例如有名的wu-ftpd 这个 ftp套件,被说了很多次,好像不怎么安全哩!那么就好就不要启动他,或者是虽然启动,但是限制他的使用网域,这样最起码可以达到一点保护的效果!此外,定时的升级与不定时上网查看危险通告,是很重要的态度呢!那么从那里知道这些安全信息?底下的网站记得要常常观看:<ul><li><font color="#000066">台湾计算机危机处理小组:<a href="http://www.cert.org.tw/" target="_blank">http://www.cert.org.tw/</a></font></li><li><font color="#000066">Mandrake security:<a href="http://www.mandrakesecure.net/en/docs.php" target="_blank">http://www.mandrakesecure.net/en/docs.php</a></font></li><li><font color="#000066">Red Hat update:<a href="http://www.redhat.com/apps/support/errata/" target="_blank">http://www.redhat.com/apps/support/errata/</a></font></li></ul>如果想要让系统自动升级套件的话,那么前一篇『<a href="http://linux.vbird.org/linux_server/0220upgrade.php">Linux套件的网络更新</a>』就不能不去看一看。<br> <li><font color="#000099">每项系统服务的安全设定项目:</font></li><br>每个服务器软件都有自己开发的功能,有些功能很强大,强大到可以让 Client端取得 root 的权限来操作。这些功能都是便利管理者来进行主机的管理,不过,却也可能造成一些为网络安全的疑虑。举例来说,SSH这个提供远程登入的服务器软件,可以提供 root 这个账号来登入,但是,由于每个Linux 系统都有 root 这个账号,所以,只要有人知道您的系统启动了 SSH ,那么他就可能会以root 这个账号来猜测您主机上的密码,并据以登入您的系统!很危险,不是吗?!所以,可能的话,尽量将服务器软件的较为危险的功能取消,例如拿掉SSH, FTP, Telnet 等软件的 root 登入权限!另外,大部分的服务器软件也会提供安全设定的项目,例如SSH 就具有 deny 某些 IP 或是使用者身份的设定项目呢!所以,发现危险人士,就加入拒绝往来名单当中吧!<br> <li><font color="#000099">TCP_Wrappers 的基础防火设定:</font></li><br>这是最基础的防火墙了!您可以订定某些比较危险的服务仅针对内部网络开放,例如FTP 与 Telnet 这两个极度危险的服务,让他们仅能在内部私有网域使用,那么TCP_Wrappers 就可以达到这样的功能咯!因为 TCP_Wrappers 主要是针对服务来设计的,他可以针对某些服务的服务IP 网段来进行通过与否的检查呢!这个我们会在下一章继续说明。<br> <li><font color="#000099">iptables 的防火规则设定:</font></li><br>这个是 Linux 核心支持的工作咯!可以利用一行一行的规则订定,来设定防火墙的安全规则,如此则可以抵挡掉大部分的不受欢迎的TCP 封包啰!这部份我们也会在下个章节中继续说明。<br> <li><font color="#000099">主机资源侦测系统( MRTG ):</font></li><br>当主机受到不明原因的攻击时,通常会有一些端倪可以瞧出来,例如最明显的是CPU 的 loading 会飙到 90 ~ 100% 左右!还有,当有内部无聊人士在大量下载数据时,网络流量频宽被他占光了!这个时候<font color="#000066">主机的资源侦测系统</font>就显的重要了,我们也可以用简易的snmp 配合 MRTG 来捉取数据,以实时的角度来观察主机的现况!<br> <li><font color="#000099">登录档案分析系统:</font></li><br>还是要再说一遍,登录档的良好的分析习惯,对于系统管理员来说,是真的很重要的一件事情!</ol>基本上,主机的防护至少需要达到上面的要求,多多观察网络上面的安全通报是真的很重要的事情,此外,由于系统管理员或许无法全天都在主机前面管理,此时自动分析的系统就很重要了!例如我们可以透过apt 或 urpmi 之类的套件管理进行网络自动套件升级、利用类似 logwatch 之类的套件来进行登录档的仔细分析等等,都可以帮助系统管理员有效率的管理主机吶!OK!那么系统管理员的主要任务是什么呢?</blockquote><hr width="100%"><a name="admin"></a><font size="+1" color="#000099">网管人员的技能:</font><blockquote>从上面的情况来看,嘿嘿嘿嘿!要作为一个称职的网管人员,还真是难呀!基本上,您必需要具备这些能力才行呢:<ul><li><font color="#000099">了解什么是需要保护的内容:</font></li><br>我的天吶,还要知道什么是需要保护的呀!?呵呵!没错,就是如此!由刚刚我们知道的主机入侵方法当中,不难了解,只要有人坐在您的主机前面,那么任何事都有可能会发生!因此,如果您的主机相当的重要,请『<font color="#000066">不要让任何人靠近</font>!』您可以参考一下汤姆克鲁斯在『不可能的任务』里面要窃取一部计算机内的数据的困难度!!^_^""<ul><li>硬件:能锁就锁吧!</li><li>软件:还包含最重要的数据呢!!</li></ul></ul><ul><li><font color="#000099">预防黑客( Black hats )的入侵:</font></li><br>这可不是开玩笑的,什么是黑客呀!这是因为原本在西部电影当中,坏人都是戴黑色帽子的,所以之前的人们就称网络攻击者为Black hats啦!在预防这方面的攻击者时,除了严格管制网络的登入之外,还需要特别控制原本您的主机中的人物!就我们小网站来说,不要以为好朋友就随便他啦!他说要指
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -