网页功能: 加入收藏 设为首页 网站搜索  
如何隐藏你的踪迹
发表日期:2003-08-13作者:[] 出处:  

            第一章  理论篇

               I. 概述

               II. 思想认识(MENTAL)

              III. 基础知识

               IV. 高级技巧

               V. 当你受到怀疑时...

               VI. 被捕

              VII. 有用的程序

              VIII. 最后的话

   I. 概述

   ----------------------------------------------------------------------

>> 译者注:本文是德国著名hacker组织"The Hacker's Choice"的96年写的一篇文章,

>> 但今天读来仍颇有收获,就象他自己说的:"即使是一个很有经验的hacker也能从这

>> 里学到一些东西".在翻译的过程中对原文做了一些改动,也加入了一些自己的理解,

>> 不当之处,还请赐教.

>>                       

   注意 : 本文分为两部分.

      第一部分讲述了一些背景和理论知识.

      第二部分通过具体的实例教你一步一步了解该做什么和不该做什么.

      如果你懒得看完全部文章,那就只读第二部分吧.它主要是写给那些

      Unix hack新手看的.

      

   如果你把尽快得到最新的exploits当成最重要的事的话,那我要说-你错了.

>>  译者注:exploits可以理解为"漏洞",不过我并不想这么翻,翻过来总感觉怪

>>  怪的,所以我还是保留了原文.文中还有一些地方也是如此处理,不再一一注明

   一旦警察没收了你的计算机、你的所有帐户都被取消、你的一切活动都被监视

   的时候,即便是最好的exploit对你又有什么用呢?

   我不想听那些辩解的话.

        不,最重要的事应该是不要被捕!

   这是每个hacker都应该明白的第一件事.因为在很多情况下,特别是当你首次

   hack一个由于饱受入侵之苦而开始对系统安全敏感的站点时,你的第一次hack

   也许就将成为你最后一次hack.

  

   所以请仔细阅读所有章节!

   即使是一个很有经验的hacker也能从中学到一些东西.

  

   下面是各节的简介:

       节 I  - 你现在正在读的

       节 II - 思想认识

            1. 动机

            2. 为什么你必须要谨慎(paranoid)

            3. 怎样才能谨慎

            4. 保持谨慎

           

       节 III - 在你开始hack前应当知道的基本知识

           1. 前言

           2. 自身安全

           3. 自己的帐户

           4. log文件

           5. 不要留下痕迹

           6. 你应当避免的事

       节 IV - 你该了解的高级技巧

           1. 前言

           2. 阻止任何跟踪

           3. 找到并处理所有的log文件

           4. 检查syslog设置和log文件

           5. 检查安装的安全程序

           6. 检查系统管理员 

           7. 怎样修正checksum检查软件

           8. 注意某些用户的安全陷阱(诡计?)

           9. 其他

       节 V  - 一旦你受到怀疑你该怎么做

       节 VI - 当你被捕时该做的与不该做的

       节 VII - 一些用于隐藏痕迹的程序的列表

       节 VIII- 最后的话,作者想说的一些废话

   请仔细阅读,开动脑筋.

  

  

  

  

  

  II. 思想认识(MENTAL)

  

>>   译者注:这一节的目的主要是提醒你树立正确的"hack"观 ;)  

   ----------------------------------------------------------------------

     内容:      1. 动机

             2. 为什么你必须要谨慎(paranoid)

             3. 怎样才能谨慎

             4. 保持谨慎

>>   译者注:paranoid的意思是"患偏执狂的",在这里可能是当

>>   "小心谨慎"来讲吧.

  * 1. 动机 *

  

   不管做什么事,信念总是取得成功的一个关键.

  

   它是你的动力源泉,它激发你去奋斗,自我约束,小心谨慎而又面对现实,准确的估

   计风险,它也能让你去做你不喜欢做但又非常重要的事情(即使你现在就想去游泳).

   如果你不激励自己去编制重要工具,等候恰当的时机去攻击目标,那你永远不

   能成为真正的hacker.

  

   一个成功而又优秀的hacker必须满足这些要求.它就象健身和节食---如果你

   真正努力去做,你就能成功.

  

  * 2. 为什么你必须要谨慎 *

   当然,小心谨慎并不会让你的生活变得更幸福.

   然而如果你从不做最坏的打算,任何事情都能击倒你,让你失去平衡.你正在做的

   事会让你冒很大风险.而在你正常的生活中你并不需要担心警察,小偷什么的.但

   如果你从另一方面考虑,你要知道你正在给别人的生活带来麻烦和恶梦--他们很

   想阻止你.

   尽管你不认为这是犯罪.但当警察迅速逮捕每个可能被牵扯的人时,你会发现一件

   很悲惨的事:你是有罪的除非你能证明你无罪!

   一旦你得到了一个hacker的"污名",你就永远不能将其去除.一旦你有了犯罪纪录,

   你将很难找到一份工作.特别是没有软件公司甚至没有与计算机有关的公司会聘用

   你,他们会害怕你的技术.你也许不得不移民...

   一旦跌倒了,能再爬起来的只是少数人.

   要小心谨慎!

   要保护好你自己!

   记住你得到的一切都可能失去!

   绝不为做额外的反跟踪工作而感到愚蠢!

   绝不为如果别人嘲笑你太谨慎而烦心!

   决不要因为太懒或者厌倦而放弃修改log文件!

   一名hacker必须%100的完成他的"工作"!

  

  * 3. 怎样才能小心谨慎 *

 

   如果你读了上面的话并且你认为那是对的,那就容易了---你已经变得小心谨慎了

   但这必须要变成你生活中的一部分才行,当你总是考虑究竟是谁告诉你了那些事,

   考虑你的电话和email可能已被监视的时候,那它已经变成你生活的一部分了.

   如果上面这些还不能帮你,那么考虑一下如果你被捕会发生什么.

   你的女友还会站在你这边吗?你想看到你父母为你流泪吗?你想丢掉饭碗

   或学业吗?

  

   不要给这一切以发生的机会!

   如果这还不能警醒你:

   离HACKING远点儿!!!

   对整个hacker社会和你的朋友来说,你都是个危险人物!

  

  * 4. 保持谨慎 *

   我希望现在你明白为什么小心谨慎的重要性了.

   所以保持谨慎.一个错误或者一次偷懒都可能彻底毁掉你的生活和事业.

    

   在做一件事时应时刻记着你的动机是什么.   

  

>>  译者注:这部分是让你知道你正在干什么及你的处境.如果你不想让你成为无聊

>>  记者津津乐道的话题---"某地破获重大黑客案...",那就多看看,多想想.要知

>>  道,自己是这种新闻的主角和看别人的新闻可完全不是一个感觉.

>>  所以要:谦虚谨慎,戒骄戒躁  :-)

   III. 基础知识

   ----------------------------------------------------------------------

     内容 :     

             1. 前言

             2. 自身安全

             3. 自己的帐户

             4. log文件

             5. 不要留下痕迹

             6. 你应当避免的事

  * 1. 前言 *

  

   在你开始你的初次hack之前,你应当知道这些并且进行些练习.这些都是非常基本

   的,不知道这些你很快就会有麻烦了.即便是一名很有经验的hacker也能从中得到

   一些新的提示.

  * 2. 自身安全 *

  

   系统管理员读了你的email吗?

   你的电话被警察监听了吗?

   警察没收了你存有所有hacking数据的计算机吗?

  

   如果你不接收可疑的email,不在电话里谈论hacking/phreaking的话题,在你的硬盘

   上也没有敏感和私人数据的话,那你不必担心上面那些情景.但那样你就并不是一个

   hacker.每个hacker和phreaker都与其他人保持联系并把他的数据保存在某个地方.

  

   加密所有敏感数据!!!

   在线硬盘加密程序是非常重要和有用的:

     在internet上游很多好的免费硬盘加密程序,它们对你的操作系统来说是完全

     透明的.下面所列的几个软件都是经过测试的,是hacker's的首选工具:

     - 如果你用MsDos,你可以使用SFS v1.17或者SecureDrive 1.4b

     - 如果你用Amiga,你可以使用EnigmaII v1.5

     - 如果你用Unix,你可以使用CFS v1.33

>>  译者注:在win9x下可以考虑emf,iprotect...     

   文件加密软件: 你可以使用任何一种加密软件,但它应该是使用一种众所周知的

   安全加密机制.绝对不要用那些被出口的加密程序,它们的有效密钥长度被缩短了!

     - Triple DES

     - IDEA

     - Blowfish (32 rounds)

   加密你的Email!

     - PGP v2.6.x 是个不错的工具.

   如果你想讨论重要的事情的话,加密你的电话.

     - Nautilus v1.5a 是迄今最好的

   当你连到一个unix系统时加密你的终端.

   一些人可能正在sniffing或者监视你的电话线:

     - SSH 是最安全的

     - DES-Login 也不错

>> 译者注:- SSL 基于SSL的一些软件也可以一试

   用强壮的不可猜测的,不在任何字典中的密码.它应当看起来象随机的但又容易记

   忆.如果密码长度可以比10个字符更长,那就用更长的.可以从书中抽取一句话,并

   略作修改.请将你的hacker朋友的电话号码加密两遍.如果你不加密,你应当从公用

   电话给他打电话.

>>  译者注:其实有个好记又难猜的密码并不难,例如考虑句子"I'm a haxor!"可以从中抽

>>  取几个单词组成I'mhaxor,好象没有数字,呵呵,用"eleet"的hacker语言,haxor=h4x0r

>>  所以我们的口令可以是:I'mh4x0r(我是hacker).这样的密码恐怕只能用暴力破解了.  

   如果你对hacking有了深入了解,你应当加密所有的东西!

   为你的数据做个备份,当然要先加密,把它放在一个隐秘的地方,最好不要在家里.

   所以即使你因为失误,火灾或警察搜捕等原因丢失了数据,你还可以得到备份数据.

  

   只有当你真的需要它们时才写出来,否则将它们放在一个机密文件或加密分区里更

   安全.一旦你不需要它们了,烧掉那些纸.你也可以用只有你自己知道的加密机制将

   它们写下来,但不要告诉任何人,也别太经常的使用它.也许它很容易被分析和破解

   真正沉稳和谨慎的hackers应该考虑实施干扰方案.警察,间谍,其他hacker能监视你

   的举动.一个拥有先进设备的人可以获得他想要的任何东西:

   计算机发射的电子脉冲可以从100米以外的距离被截获,可以显示你的监视器屏幕,

   监听你的私人谈话,确认键盘敲击时的高频信号等等...所以各种可能性总是存在的.

   成本低廉的应付方法就是采用电子脉冲干扰发射机,商店里就有卖的.如果你不想让

>>  译者注:不知道我们的商店里有没有卖的.;-)  

   任何人监视你,我认为这些还不够...

  

  

  

  

  * 3. 你自己的帐户 *

   下面让我们谈谈你自己的帐户.它就是你在学校/公司/ISP那里得到的帐户,它

   总是与你的真实姓名联系在一起,所以在使用它时绝对不要违背下面的原则:

  

   永远不要用你的真实帐户做任何非法或者惹人怀疑的事!

   永远不要试图从你的真实帐户telnet到任何被hacked主机去!

   当然可以用这个帐号订阅安全mailing lists.

   但任何与hacking有关的东西都必须加密或者立刻销毁.

   决不要在你帐号下保存hacking或security工具.

   尽量用POP3连到你的mailserver下载或者删除你的邮件(如果你对unix比较熟悉,

   还可以直接telnet到POP3端口执行下载或者删除命令).

   决不要泄漏你的真实email给你不信任的人,只把它给你信任的人,他们也应当是比较

   注意安全问题的人,否则如果他们被捕,下一个就是你了(或许他们根本就是警察,而不

   是hacker.).

   与其他的hacker用email交流时必须要用PGP加密,因为系统管理员经常偷看用户目录,

   甚至读区别人的email!!其他的hacker也可能hack你们的站点并试图得到你的数据.

  

   绝不要用你的帐号表明你对hacking感兴趣!

   对安全感兴趣可以,但不要再进一步了.

  

>>  译者注:与别人交流时可以申请免费信箱,最好是国外的,比如hotmail之类,登陆时注意最好

>>  通过proxy.自己的真实信箱应当只用来进行一般的正常通信,与朋友/老师/同事...

  

  * 4. LOG文件 *

  

   有三个重要的log文件:

     WTMP - 记录每次登录的信息,包括登陆/退出的时间,终端,登录主机ip

     UTMP - 在线用户记录

     LASTLOG - 记录用户上次是从哪里登录的

   当然还有其他的log,它们将在"高级技巧"一节种讨论.每次通过telnet,ftp,rlogin,rsh

   的登录都会被记录到这些文件中.如果你正在hacking,把自己从这些记录中删除就是很

   重要的了.否则他们会:

     a) 准确的发现你什么时候在搞hacking活动

     b) 发现你从那个站点过来

     c) 知道你在线的时间有多长,以便计算你给他们造成的损失

   绝对不要删除这些log文件!!!那等于通知管理员:"嗨,你的机器上有个hacker!".找一个

   好程序来修改这些log.ZAP(或ZAP2)经常被认为是最好的但事实上它并不是.它只是简单

   的用0来填充用户上次登陆的数据段.CERT已经发布了一个简单的程序用来检查这些全零

   数据项.所以这样也会很容易就让人知道现在有个hacker在活动,这样你所有的工作就没

   有意义了.ZAP的另外一个缺陷是当它找不到那些log文件时,它并不报告.所以在编译之前

   必须先检查一下路径!你应该使用能改变记录内容的程序(象cloark2.c)或者能真正删掉

   记录的程序(象clear)

>>  译者注:   THC提供的cleara.c ,clearb.c是非常好用的清除工具.可以清除

>>  utmp/utmpx,wtmp/wtmpx,修复lastlog让其仍然显示该用户的上次登录信息(而不

>>  是你登录的信息).如果你发现你登录后没有显示上次登录信息,那很可能你的机器

>>  可能已经被人hack了,当然,即使显示正确的信息也未必就没有被hack.;-)

   一般来说要修改log你必须是root(有些老版本系统例外,它们将utmp/wtmp设成允许所有人可写)但

   如果你不能得到root权限---你该怎么做呢?

   你应该rlogin到你现在所处的主机,以便在lastlog种增加一个不是那么惹人怀疑的数据项,它将在

   该用户下次登录时被显示,如果他看到"上次从localhost登录"的信息时也许不会怀疑.

>>  译者注:这也是没有办法的办法,换了我,我就会怀疑.;)

   很多unix系统的login命令有一个bug.当你登录以后再执行一遍login命令时,它将

   用你当前的终端重写UTMP中的login from段(它显示你是从哪里来的!)

  

   那么这些log文件缺省在什么地方呢?

   这依赖于不同的Unix版本.

   UTMP : /etc 或 /var/adm 或 /usr/adm 或 /usr/var/adm 或 /var/log

   WTMP : /etc 或 /var/adm 或 /usr/adm 或 /usr/var/adm 或 /var/log

   LASTLOG : /usr/var/adm 或 /usr/adm 或 /var/adm 或 /var/log

   在一些旧unix版本中lastlog数据被写到$HOME/.lastlog

  

  * 5. 不要留下痕迹 *

   我曾经碰到很多hacker,他们把自己从log里删除了.但他们忘记删掉他们在机器中留下

   的其他一些东西:在/tmp和$HOME中的文件

  

   Shell 记录

   一些shell会保留一个history文件(依赖于环境设置)记录你执行的命令.这对hacker来

   说确实是件很糟糕的事.

  

   最好的选择就是当你登录以后先启动一个新shell,然后在你的$HOME中查找历史纪录.

   历史记录文件:

    sh : .sh_history

    csh : .history

    ksh : .sh_history

    bash: .bash_history

    zsh : .history

>>  译者注:.*history是我最喜欢看的文件之一,通过它你可以了解root或用户常干些什么,

>>  从而得知他们的水平如何,如果他们只会执行"ls","pwd","cp"...那说明水平不过尔尔,无须

>>  太担心.不过如果你发现root喜欢"find / -type f -perm -04000 -exec ls -al {} \;","

>>  "vim /var/adm/messages","ps -aux( -elf) ","netstat -an"....那你就要小心一点了

   备份文件 :

    dead.letter, *.bak, *~

   在你离开前执行一下"ls -altr"看看你有没有留下什么不该留下的东西.

  

   你可以敲4个csh命令,它能让你离开时删掉这些历史文件,不留下任何痕迹.

     mv .logout save.1

     echo rm .history>.logout

     echo rm .logout>>.logout

     echo mv save.1 .logout>>.logout

>>  译者注:对于bash,有一个简单的办法就是执行一下"HISTFILE=",就是不设置bash的历史文件,

>>  这样就不会有讨厌的.bash_history了.(准确地说,是不会往$HOME/.bash_history里写了)

>>  或者退出的时候简单的敲kill -9 0 ,它会杀掉这次登录后产生的所有进程,bash也不会往.bash

>>  _history里写

     

  * 6. 你应当避免的事 *

   不要在不属于你的机器上crack口令.如果你在别人(比如说一所大学)的机器上破解口令,

   一旦root发现了你的进程,并且检查它.那么不仅你hacking的帐号保不住了,可能连你得

   到的那passwd文件也没了.那学校将会密切注视你的一举一动...

   所以得到口令文件后应该在自己的机器上破解.你并不需要破解太多的帐号,能破出几个就

   够了.

   如果你运行攻击/检测程序象ypx,iss,satan或其他的exploiting程序,应当先改名再执行它们.

   或者你可以修改源码改变它们在进程列表中显示的名字...

  

>>  译者注:这并不难,你只要在main()中将argv[]用你喜欢显示的名字替代就可以了比如argv[0]

>>  ="in.telnetd",argv[1]=""...(当然必须在程序已经从argv中读取了所需的参数之后).  

   如果某个细心的用户/root发现5个ypx程序在后台运行,他马上就会明白发生了什么.

   当然如果可能的话不要在命令行中输入参数.如果程序支持交互方式,象telnet.

   应当先敲"telnet",然后"o target.host.com"...这就不会在进程表中显示目标主机

   名.

  

>>  译者注:如果你用ftp,最好这样做:

>>  $ ftp -n

>>  $ ftp>o target.host

>>   blahblah...(一些连接信息)

>>   blahblah...(ftp server版本)

>>   ftp>user xxx

>>   ....

  

   如果你hack了一个系统---不要在任何地方放suid shell!

   最好装一些后门象(ping,quota或者login),用fix来更正文件的atime和mtime.

>>  译者注:  放suid shell是很蠢的,非常容易被root发现.

     

   IV. 高级技巧

   ----------------------------------------------------------------------

     内容 :     1. 前言

             2. 阻止任何跟踪

             3. 找到并处理所有的log文件

             4. 检查syslog设置和log文件

             5. 检查安装的安全程序

             6. 检查系统管理员 

             7. 怎样修正checksum检查软件

             8. 注意某些用户的安全陷阱(诡计?)

             9. 其他            

 

  * 1. 前言 *

   一旦你装了第一个sniffer开始你的hack生涯,你就应该知道并使用这些技巧!

   请运用这些技巧---否则你的hack之旅就行将结束.

  

  * 2. 阻止任何跟踪 *

   有时候你的hacking活动会被人发现.那并不是什么大问题 - 你hacked一些站点

   可能会被关掉,但谁管它呢,赶紧离开就是了.但如果他们试图跟踪你的来路(通常

   是为了抓住你)的话那就很危险了!

  

   这一节将告诉你他们跟踪你的各种可能的方法以及你该如何应对.

  

   * 通常对系统管理员来说发现一个hacker是从哪里来的并不是什么问题:检查log记

    录(如果那个hacker真的那么蠢的话);看看hacker安装的sniffer的输出记录(也许

    里面也记下了他的连接)或者其他系统记帐软件(象loginlog等等);甚至可以用netstat

    显示所有已经建立的网络连接--如果那个hacker正在线的话,那他就被发现了.

    这就是为什么你需要一个gateway server(网关).

  

   * 什么是gateway server?

    它是你所"拥有"的很多服务器中的一个,你已经得到了它的root权限.你

    需要root权限去清除wtmp/lastlog/utmp等系统记录或者其他一些记帐软

    件的log文件.除此之外你不在这台机器上做任何其他的事(它只是个中转

    站).你应当定期更换gateway server,可以每隔1,2个星期更换一次,然后

    至少一个月内不再使用原来的gateway server.这样他们就很难跟踪到你

    的hacking server.

   

   * hackin server - 所有活动的出发点

    你从这些机器开始hacking.Telnet(或者更好的:remsh/rsh)到一个gateway server,

    然后再到一个目标机器.你需要有root权限以修改log.你必须每隔2-4个星期就更换

    hacking server..

   

   * 你的堡垒/拨号主机.

    这是个临界点.一但他们能跟踪回你拨号进入的机器,你就有麻烦了.只要打

    个电话给警察,再进行一次通信线路跟踪,你的hack活动就会成为历史了,也

    许是你的未来.

    在堡垒主机上你不需要得到root权限.既然你只是通过modem拨入,那里没有

    什么必须修改的记录.你应该每天用一个不同的帐号拨号进入,尽量用那些

    很少使用的.你应该找到至少2个你能拨号进去堡垒主机,每隔1-2个月更换一

    次.

   

>>   译者注:我对phreak不熟.我猜大部分的国内hacker还没什么本事能躲过电信局

>>   的跟踪.所以最好不要用别人的帐号上网,特别是那些很少上网的帐号,一旦他

>>   发现上网费用剧增,肯定会让电信局追查的,到时候你就大难临头了.如果

>>   你用那些上网频繁的人的帐号,他反倒不会注意,只会以为这个月上的太厉

>>   害了.:-)(这绝对没有鼓励你盗用别人帐号的意思,这等于盗窃,凭什么你上网

>>   要别人交钱?就凭你会用john破几个口令吗?hacker的名声就是让这些打着hacker

>>   旗号的无耻之徒败坏的.对这种人就得抓!所以我对这样的phreaker没有什么好感,

>>   你要真有本事,就别嫁祸别人,而且还要让电信局查不出来.) 说多了,咱们言归正传.

    注意: 如果你能每天拨入不同的系统(比如通过"蓝盒子"),那你就不需要那些

       hacking server了.

   * 使用蓝盒子,这样即使他们跟踪到你的堡垒主机,也不能(至少是不能很容易地)

    追踪到你的电话...

    使用蓝盒子必须小心,德国和美国的电话公司有专门的监视系统来追踪使用蓝盒

    子的人... 

    使用一个中间系统来传送你的电话将会使跟踪更加困难, 但是同样由于你使用

    一个pbx或其他的什么东西, 仍使你处于被抓的危险中. 这取决于你.

    注意在丹麦所有的电话数据均被记录!即使在你打完电话10年后,他们仍然能证明你

    曾登录过他们的拨号系统从事hack活动...   

   

   - 其他的

    如果你想运行satan,iss,ypx,nfs文件句柄猜测程序..你应当使用一个专门的服务

    器来完成.不要用这个服务器telnet/rlogin到目标服务器,只是用它来进行检测.

   

    有些程序可以bind到一个特殊端口,当一个指定到该端口的连接建立的时候,它自动

    打开一个连接连到另外一个服务器的某个端口(有些就模拟一个shell,你可以从这个

    socket daemon中"telnet"到其他机器).

    使用这种程序你不会被记录(防火墙log除外).有很多程序可以帮你完成上述功能.

>>   译者注:这种程序我常用的有datapipe.c,telbounc.c,还是很好用的.它就象是个

>>   代理服务器,但是不会有记录.:)   

   

    如果可能的话,hacking server或者gateway server应该在国外!

    因为如果你的入侵被发现,当发现你来自国外的主机时,大多数网管都会放弃追查.

    即使是警察要通过不同的国家追踪你,这也至少可以拖延2-10个星期的时间...

   

   #下面是hack过程的简图,也许对你有些帮助;-)

 +-------+   ~--------------->   +-------------+   +-----------+

 |+-----+|   >        >   |       |   |      |

 ||本机 || --> > 安全拨号线路 > --> | 堡垒主机  | --> | hacking  |

 |+-----+|   >        >   | (至少有3个) |   | server  |

 +-------+   ~--------------->   +-------------+   +-----------+

                                |

                                |

                                v

      +-----------------+       +--------+   +-----------+

      |         |       |    |   |      |

      | 内部网络中的主机| ... <-- ... |目标主机| <-- | gateway |

      |         |       |    |   |  server |

      +-----------------+       +--------+   +-----------+

  * 3. 找到并处理所有的LOG文件 *

   找到所有的logfiles是很重要的---即使他们被隐藏.要找到它们有两种可能的方法:

   1)找到所有打开的文件.

    既然所有的log必须写到某个地方去,所以用可以用LSOF(LiSt Open Files)程序

    去检查所有打开的文件,必要的话就得修改它们.

>>  译者注:lsof由Vic Abell <abe@purdue.edu>编写,用来提供被进程打开的文件的信息,

>>  它的最新版本可以在ftp://vic.cc.purdue.edu/pub/tools/unix/lsof下找到.有趣

>>  的是,不久前有人发现lsof4.40以前的版本中存在buffer overflow问题,可以取得root

>>  权限.:-)    

     

   2) 搜索所有在你登录后有变化的文件

    在你登录后,执行"touch /tmp/check",然后可以干你的活.最后只要执行"find /

    -newer /tmp/check -print",并检查找到的文件,如果其中有记帐文件,就应该修改

    它.注意不是所有版本的find都支持 -newer 参数.你也可以用"find / -ctime 0

    -print" 或者 "find / -cmin 0 -print"来查找它们.

>>  译者注:我更喜欢用-exec ls -l {} \;来代替-print,因为这可以列出比较详细的信息.

>>  注意上述方法主要是针对系统记帐软件的,它可能会记录你执行的命令.对于只记录login

>>  信息的软件,它在你看到shell提示符以前就已经完成记录了.所以用这种检查是查不出来的.

   检查你找到的所有的logfiles.它们一般在/usr/adm,/var/adm或者/var/log,/var/run.

   如果它们被记录到@loghost,那你可能就有点麻烦了.你需要hack那台loghost主机去修改

   log...

  

>>  译者注:一般单纯用作loghost的机器比较难hack,因为它往往关掉了几乎所有端口,并且只

>>  允许从控制台登录.对于这样的机器,可以用DoS攻击使之瘫痪,从而失去log功能.(要hack

>>  往往比较难,要crash it则相对容易一些.;-)当然,本次登陆的记录仍然会被保存下来.

 

   为了处理logs,你可以用"grep -v"或者用wc统计行数后,再用"tail -10 log"察看最后10行

   ,或者用编辑器vi,emcas.

>>  译者注:如果你从a.b.c来,你可以用grep -v "a.b.c" logfile>logtemp;mv logtemp logfile;

>>  来清除所有含有a.b.c的行.如果log文件比较大,你也可以用vim来编辑.  

>>  注意这只能用来修改文本文件!!!对二进制文件的修改可能导致文件格式被破坏!!!

   如果数据文件是二进制格式的,你应当首先查明它是由什么软件产生的,然后设法找到该软件

   的源码,分析记录项的结构,自己编程修改记录.(可以利用现成的程序加以修改,比如Zap,clear

   cloak...).

  

   如果系统安装了accounting软件.你可以用zhart写的acct-clener---它非常有效!

  

   如果你必须修改wtmp,但系统又不能编译源程序也没有perl....你可以这样做,先uuencode

   wtmp,然后运行vi,移动到最后一行,删除最后以"M"开头的4行...然后保存退出.uudecode

   .然后最后5个wtmp记录项就被删除了.;-) 注意这只在SCO unix下有效,linux下是不行的.

>>  译者注:我没有验证这个,因为没有SCO服务器.如果你要这么做,记得要先做个wtmp的备份.

  

   如果系统用wtmpx和utmpx,那你又有麻烦了..迄今我还不知道有哪个cleaner程序可以处理

   它们.你不得不自己编一个程序来完成工作.

  

>>  译者注:wtmpx和utmpx结构与wtmp和utmp类似,只要将清除utmp和wtmp的软件略加修改就可

>>  以了.而且现在已经不少现成的程序可以修改utmpx/wtmpx了.

 

  * 4. 检查SYSLOG配置和记录 *

   大部分程序都用syslog函数来记录它们需要的所有东西.因而检查syslogd的配置文件是

   很重要的.

   这个配置文件是/etc/syslog.conf - 我不会告诉你它的格式是什么/每一项是什么意思,

   自己去读它的man页.

   对你来说重要的syslog类型是kern.*,auth.*和authpriv.*.看看它们被写到哪里了,如

   果写到文件里还可以修改.如果被转发到其他主机,你必须也要hack它们.如果消息被发给

   某个用户,tty或者控制台.你能耍点小花招发很多个假消息象"echo 17:04 12-05-85 kernel

   sendmail[243]: can't resolve bla.bla.com > /dev/console"(或其他你想flood的

   的设备),让它卷屏,以隐藏你引发的信息.这些log文件是非常非常重要的!检查它们!

  

  * 5. 检查已经安装的安全程序 *

   很多注重安全的站点都通过cron运行安全检查程序.crontabs通常在/var/spool/cron/crontabs.

   检查里面所有的文件,特别是"root"文件,检查它里面都运行了什么程序.用"crontab -l root"可以

   快速的检查root crontab的内容.

 

   这些安全工具往往装在管理员的目录下比如~/bin.

  

   这些检查软件可能是 tiger, cops, spi, tripwire, l5,binaudit, hobgoblin, s3 等等...

   你必须检查它们都报告了些什么东西,看它们是否报告了一些显示出你入侵迹象的东西.

   如果是的话,你可以 - 更新软件的数据文件,是它们不再报告这种类型的消息.

           - 可以重新编程或修改该软件使它们不再产生报告.

           - 如果可能的话,删除你安装的后门或其他程序,并试着用其他的方法来完成

    

  * 6. 检查系统管理员 *

   对你来说了解系统管理员采取了那些安全措施是非常重要的.因此你需要知道他们经常使用哪些

   普通用户帐号.

   你可以检查root的.forward文件和alias内容.看看sulo

我来说两句】 【加入收藏】 【返加顶部】 【打印本页】 【关闭窗口
中搜索 如何隐藏你的踪迹
本类热点文章
  一次简单脚本攻击实例
  我是这样渗透入侵孤独剑客网站(janker...
  入侵日记一则
  入侵日记一则
  老式模拟手机密码破解
  老式模拟手机密码破解
  中国鹰派联盟
  初级黑客安全技术命令详解
  如何利用终端服务入侵远程计算机
  如何利用终端服务入侵远程计算机
  “流光异彩”话小榕
  一次入侵过程
最新分类信息我要发布 
最新招聘信息

关于我们 / 合作推广 / 给我留言 / 版权举报 / 意见建议 / 广告投放  
Copyright ©2003-2024 Lihuasoft.net webmaster(at)lihuasoft.net
网站编程QQ群   京ICP备05001064号 页面生成时间:0.00513