• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 關于系統的后門

    發表于:2007-07-02來源:作者:點擊數: 標簽:
    這是一篇很好的文章,以前曾讀過,但很匆忙.昨天靜下心來細細品味,頗有收獲.由于水平所限,許多不確切的地方已經指出,希望你們不吝指教.還有,許多方法理論上能夠明白,實際操作尚有距離,希望大家以后能熱烈討論. 后門 (Beta 1) Christopher Klaus 8/4/97 譯者 ia

        這是一篇很好的文章,以前曾讀過,但很匆忙.昨天靜下心來細細品味,頗有收獲.由于水平所限,許多不確切的地方已經指出,希望你們不吝指教.還有,許多方法理論上能夠明白,實際操作尚有距離,希望大家以后能熱烈討論.

    后門 (Beta 1)


    Christopher Klaus 8/4/97

    譯者 iamtheguest


        從早期的計算機入侵者開始,他們就努力發展能使自己重返被入侵系統的技術或后 .本文將討論許多常見的后門及其檢測方法. 更多的焦點放在Unix系統的后門,同時 論一些未來將會出現的Windows NT的后門. 本文將描述如何測定入侵者使用的方法 這樣的復雜內容和管理員如何防止入侵者重返的基礎知識. 當管理員懂的一旦入侵者 侵后要制止他們是何等之難以后, 將更主動于預防第一次入侵. 本文試圖涉及大量 流行的初級和高級入侵者制作后門的手法, 但不會也不可能覆蓋到所有可能的方法.


    大多數入侵者的后門實現以下二到三個目的:

        即使管理員通過改變所有密碼類似的方法來提高安全性,仍然能再次侵入. 使再 侵入被發現的可能性減至最低.大多數后門設法躲過日志, 大多數情況下即使入侵者 正在使用系統也無法顯示他已在線. 一些情況下, 如果入侵者認為管理員可能會檢測 到已經安裝的后門, 他們以系統的 脆弱性作為唯一的后門, 重而反復攻破機器. 這也不會引起管理員的注意. 所以在 這樣的情況下,一臺機器的脆弱性是它唯一未被注意的后門.

    密碼破解后門
        這是入侵者使用的最早也是最老的方法, 它不僅可以獲得對Unix機器的訪問, 而且可以通過破解密碼制造后門. 這就是破解口令薄弱的帳號. 以后即使管理員封了入侵者的當前帳號,這些新的帳號仍然可能是重新侵入的后門. 多數情況下, 入侵者尋找口令薄弱的未使用帳號,然后將口令改的難些. 當管理員尋找口令薄弱的帳號是, 也不會發現這些密碼已修改的帳號.因而管理員很難確定查封哪個帳號.

    Rhosts + + 后門
        在連網的Unix機器中,象Rsh和Rlogin這樣的服務是基于rhosts文件里的主機名使用簡單的認證方法. 用戶可以輕易的改變設置而不需口令就能進入. 入侵者只要向可以訪問的某用戶的rhosts文件中輸入"+ +", 就可以允許任何人從任何地方無須口令便能進入這個帳號. 特別當home目錄通過NFS向外共享時, 入侵者更熱中于此. 這些帳號也成了入侵者再次侵入的后門. 許多人更喜歡使用Rsh, 因為它通常缺少日志能力. 許多管理員經常檢查 "+ +", 所以入侵者實際上多設置來自網上的另一個帳號的主機名和用戶名,從而不易被發現.

    校驗和及時間戳后門
        早期,許多入侵者用自己的trojan程序替代二進制文件. 系統管理員便依靠時間戳和系統校驗和的程序辨別一個二進制文件是否已被改變, 如Unix里的sum程序. 入侵者又發展了使trojan文件和原文件時間戳同步的新技術. 它是這樣實現的: 先將系統時鐘撥 到原文件時間, 然后調整trojan文件的時間為系統時間. 一旦二進制trojan文件與原來的精確同步, 就可以把系統時間設回當前時間. sum程序是基于CRC校驗, 很容易騙過.入侵者設計出了可以將trojan的校驗和調整到原文件的校驗和的程序. MD5是被大多數人推薦的,MD5使用的算法目前還沒人能騙過.

    Login后門


        在Unix里,login程序通常用來對telnet來的用戶進行口令驗證. 入侵者獲取login.c的原代碼并修改,使它在比較輸入口令與存儲口令時先檢查后門口令. 如果用戶敲入后門口令,它將忽視管理員設置的口令讓你長驅直入. 這將允許入侵者進入任何帳號,甚至是root.由于后門口令是在用戶真實登錄并被日志記錄到utmp和wtmp前產生一個訪問, 所以入侵者可以登錄獲取shell卻不會暴露該帳號. 管理員注意到這種后門后, 便用"strings"命令搜索login程序以尋找文本信息. 許多情況下后門口令會原形畢露.
    入侵者就開始加密或者更好的隱藏口令, 使strings命令失效. 所以更多的管理員是用MD5校驗和檢測這種后門的.


    Telnetd后門
        當用戶telnet到系統, 監聽端口的inetd服務接受連接隨后遞給in.telnetd,由它運行login.一些入侵者知道管理員會檢查login是否被修改, 就著手修改in.telnetd.在in.telnetd內部有一些對用戶信息的檢驗, 比如用戶使用了何種終端. 典型的終端設置是Xterm或者VT100.入侵者可以做這樣的后門, 當終端設置為"letmein"時產生一個不要任何驗證的shell. 入侵者已對某些服務作了后門, 對來自特定源端口的連接產生一個shell .


    服務后門
        幾乎所有網絡服務曾被入侵者作過后門. finger, rsh, rexec, rlogin, ftp, 甚至inetd等等的作了的版本隨處多是. 有的只是連接到某個TCP端口的shell,通過后門口令就能獲取訪問.這些程序有時用刺媧□?ucp這樣不用的服務,或者被加入inetd.conf作為一個新的服務.管理員應該非常注意那些服務正在運行, 并用MD5對原服務程序做校驗.


    Cronjob后門
        Unix上的Cronjob可以按時間表調度特定程序的運行. 入侵者可以加入后門shell程序使它在1AM到2AM之間運行,那么每晚有一個小時可以獲得訪問. 也可以查看cronjob中經常運行的合法程序,同時置入后門.


    庫后門
        幾乎所有的UNIX系統使用共享庫.共享庫用于相同函數的重用而減少代碼長度.一些入侵者在象crypt.c和_crypt.c這些函數里作了后門.象login.c這樣的程序調用了crypt(),當使用后門口令時產生一個shell. 因此, 即使管理員用MD5檢查login程序,仍然能產生一個后門函數.而且許多管理員并不會檢查庫是否被做了后門.對于許多入侵者來說有一個問題: 一些管理員對所有東西多作了MD5校驗. 有一種辦法是入侵者對open()和文件訪問函數做后門. 后門函數讀原文件但執行trojan后門程序. 所以 當MD5讀這些文件時,校驗和一切正常. 但當系統運行時將執行trojan版本的. 即使trojan庫本身也可躲過MD5校驗. 對于管理員來說有一種方法可以找到后門, 就是靜態編連MD5校驗程序然后運行.靜態連接程序不會使用trojan共享庫.

     

    內核后門
        內核是Unix工作的核心. 用于庫躲過MD5校驗的方法同樣適用于內核級別,甚至連靜態連接多不能識別. 一個后門作的很好的內核是最難被管理員查找的, 所幸的是內核的后門程序還不是隨手可得, 每人知道它事實上傳播有多廣.

    文件系統后門

        入侵者需要在服務器上存儲他們的掠奪品或數據,并不能被管理員發現.入侵者的文章常是包括exploit腳本工具,后門集,sniffer日志,email的備分,原代碼,等等. 有時為了防止管理員發現這么大的文件, 入侵者需要修補"ls","du","fsck"以隱匿特定的目錄和文件.在很低的級別, 入侵者做這樣的漏洞: 以專有的格式在硬盤上割出一部分,且表示為壞的扇區. 因此入侵者只能用特別的工具訪問這些隱藏的文件. 對于普通的管理員來說, 很難發現這些"壞扇區"里的文件系統, 而它又確實存在.

     

    Boot塊后門
        在PC世界里,許多病毒藏匿與根區, 而殺病毒軟件就是檢查根區是否被改變. Unix下,多數管理員沒有檢查根區的軟件, 所以一些入侵者將一些后門留在根區


    隱匿進程后門
        入侵者通常想隱匿他們運行的程序. 這樣的程序一般是口令破解程序和監聽程序(sniffer).有許多辦法可以實現,這里是較通用的:編寫程序時修改自己的argv[]使它看起來象其他進程名.可以將sniffer程序改名類似in.syslog再執行. 因此當管理員用"ps"檢查運行進程時, 出現 的是標準服務名. 可以修改庫函數致使"ps"不能顯示所有進程. 可以將一個后門或程序嵌入中斷驅動程序使它不會在進程表顯現. 使用這個技術的一個后門例子是amod.tar.gz :

    也可以修改內核隱匿進程


    最流行的后門安裝包之一是rootkit.
    它很容易用web搜索器找到.從Rootkit的README
    里,可以找到一些典型的文件:
    z2 - removes entries from utmp, wtmp, and lastlog.
    Es - rokstars ethernet sniffer for sun4 based kernels.
    Fix - try to fake checksums, install with same dates/perms/u/g.
    Sl - become root via a magic password sent to login.
    Ic - modified ifconfig to remove PROMISC flag from output.
    ps: - hides the processes.
    Ns - modified netstat to hide connections to certain machines.
    Ls - hides certain directories and files from being listed.
    du5 - hides how much space is being used on your hard drive.
    ls5 - hides certain files and directories from being listed.

     


    網絡通行后門
        入侵者不僅想隱匿在系統里的痕跡, 而且也要隱匿他們的網絡通行. 這些網絡通行后門有時允許入侵者通過防火墻進行訪問. 有許多網絡后門程序允許入侵者建立某個端口號并不用通過普通服務就能實現訪問.因為這是通過非標準網絡端口的通行,管理員可能忽視入侵者的足跡.這種后門通常使用TCP,UDP和ICMP, 但也可能是其他類型報文.


    TCP Shell 后門
        入侵者可能在防火墻沒有阻塞的高位TCP端口建立這些TCP Shell后門. 許多情況下,他們用口令進行保護以免管理員連接上后立即看到是shell訪問. 管理員可以用netstat命令查看當前的連接狀態, 那些端口在偵聽, 目前連接的來龍去脈. 通常這些后門可以讓入侵者躲過TCP Wrapper技術. 這些后門可以放在SMTP端口, 許多防火墻允許e-mail通行的.


    UDP Shell 后門
        管理員經常注意TCP連接并觀察其怪異情況, 而UDP Shell后門沒有這樣的連接, 所以netstat不能顯示入侵者的訪問痕跡. 許多防火墻設置成允許類似DNS的UDP報文的通行. 通常入侵者將UDP Shell放置在這個端口, 允許穿越防火墻.

     

    ICMP Shell 后門
        Ping是通過發送和接受ICMP包檢測機器活動狀態的通用辦法之一. 許多防火墻允許外界ping它內部的機器. 入侵者可以放數據入Ping的ICMP包, 在ping的機器間形成一個shell通道. 管理員也許會注意到Ping包暴風, 但除了他查看包內數據, 否者入侵者不會暴露.


    加密連接
        管理員可能建立一個sniffer試圖某個訪問的數據, 但當入侵者給網絡通行后門加密后,就不可能被判定兩臺機器間的傳輸內容了.

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>