計(jì)算機(jī)相關(guān)專業(yè)實(shí)習(xí)報告_第1頁
計(jì)算機(jī)相關(guān)專業(yè)實(shí)習(xí)報告_第2頁
計(jì)算機(jī)相關(guān)專業(yè)實(shí)習(xí)報告_第3頁
計(jì)算機(jī)相關(guān)專業(yè)實(shí)習(xí)報告_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

計(jì)算機(jī)相關(guān)專業(yè)實(shí)習(xí)報告

專業(yè)實(shí)習(xí)報告871279朱育民

一、工作內(nèi)容這學(xué)期跟李錫捷教師實(shí)習(xí),參加的工作工程是信息平安組,因?yàn)槠綍r較其它三位組員多接觸UNIX-Like的環(huán)境,因此成為本組組長并協(xié)助聯(lián)絡(luò)事情。我們期初一開場便有正式的case接手,是一個韓國的駭客教育機(jī)構(gòu)Hackerslab委托翻譯他們的一份駭客教材。

對于這方面,我們四人雖然很有興趣,但是相關(guān)的技術(shù)背景都還嫌不夠,因此做起來并不是很輕松,最常遇到的問題就是專業(yè)名詞的查詢與翻譯,常常會有不知如何是好的窘境發(fā)生,幸好系上的學(xué)長大多能提供我們一些查詢的方向,大部分的問題到最后還是能順利完成,這樣初期的翻譯工作大約持續(xù)了一個多月后暫時完畢。對外的case完成后,我們繼續(xù)朝著信息平安相關(guān)的方向研究,主要是針對兩個程序進(jìn)展改進(jìn)工作,一個為測試系統(tǒng)破綻的Nessus,一個為偵測入侵系統(tǒng)Snort,至此小組里再以兩人一組細(xì)分為Nessus組跟Snort組,各自進(jìn)展測試工作。

我所分配的是Nessus組,這是一種可以用來測試效勞器有哪些網(wǎng)絡(luò)破綻的程序,由于采用Plug-ins的方式安裝,因此可以隨時安插新破綻的測試Plug-ins,加上Nessus總部的CVS機(jī)制,只要你的Nessus系統(tǒng)有定期CVS更新,就能保持最新的完好破綻測試。在業(yè)界雜志的評比里Nessus的評價甚至超越許多商用軟件(Nessus是免費(fèi)的),但是他有個小缺點(diǎn),就是有關(guān)破綻測試報告的部分作的并不是非常完好,每支破綻的測試回報完好與否,取決于Plug-ins作者是否有在寫作Plug-ins加上完好的表達(dá)與解決方案,問題是大部分的Plug-ins都只有程序代碼,并沒有對表達(dá)及解決方式作批注說明,因此即使在使用Nessus測出系統(tǒng)的平安破綻后,使用者必須在到網(wǎng)絡(luò)上搜尋解決方法,這樣作實(shí)在不是很便利,因此教師希望我們能對于Nessus的測試回報部分作改進(jìn),寫出一個報告閱讀程序,結(jié)合龐大的信息平安信息,讓使用者能在檢測出破綻的同時,直接獲得相關(guān)的信息和解決方案,便利系統(tǒng)管理者在改善本身系統(tǒng)平安的時效性。

二、學(xué)習(xí)1.FreeHackersZone這學(xué)期最早接觸的學(xué)習(xí)環(huán)境,應(yīng)該要算Hackerslab提供的一個駭客練慣用工作站FreeHackerZone。這是一臺用Linux架起來的工作站,里面分將使用者分作level0到level14,每獲得下依個等級的使用者權(quán)限,都有一個相對應(yīng)的系統(tǒng)破綻需要去破解,訓(xùn)練使用者在實(shí)作中理解駭客破解系統(tǒng)的方法,我一面翻該組織的FAQ,一面嘗試錯誤,讓我一路攻到level10,其中學(xué)習(xí)到的手法包括了使用者權(quán)限設(shè)定,尋找特定權(quán)限的檔案,利用系統(tǒng)分隔符來欺騙系統(tǒng),溢位攻擊等等,然而在前進(jìn)level11時,因?yàn)樵撈凭`必須自韓國本地進(jìn)展破解,因此只好作罷,沒能進(jìn)一步繼續(xù)。

不過這個經(jīng)歷對于后來翻譯Hackerslab的文件有的不少的助益!2.HackersLab教材翻譯經(jīng)過這段暖身后,我們正式接下Hackerslab文件翻譯的工作,我負(fù)責(zé)的是Sniff(監(jiān)聽)與網(wǎng)頁平安兩份教材。在以太網(wǎng)絡(luò)上,只要是同一個lan上的機(jī)器,都能收到在lan上傳送的封包,系統(tǒng)核心會進(jìn)展比對,假如該封包是屬于自己的就繼續(xù)處理,假如不是就忽略掉,而sniffing原理就是改變最后的步驟,將所有經(jīng)過的封包,不管是否屬于自己,全部抓進(jìn)來記錄。

Sniffing的正面意義應(yīng)該是用于處理觀察網(wǎng)絡(luò)流量狀況,一旦網(wǎng)絡(luò)出現(xiàn)異常時,可以藉由Sniffing來觀察有哪些異常封包,幫助排除異常狀況。至于竊取傳送中的使用者賬號跟密碼,那么是cracker的行為,這并非Sniffing的本意。

對于區(qū)網(wǎng)內(nèi)要如何防止被Sniff,最簡單是在該區(qū)網(wǎng)內(nèi)使用switchhub。跟hub不同的是,hub會將接收到的封包向所有連接的host傳送出去,但switch本身具有MAC路由表的功能,可以記得哪一個MAC地址要從哪一個連接埠送出去,因此不會讓不相關(guān)的host收到該封包,大大減少了被Sniff擷取封包的時機(jī)。

另外一種作法是對于傳送的封包均作加密處理,這樣就算被別人擷取到封包,對方也很難將封包解密而復(fù)原成本來的樣字加以解讀。常見的加密方式例如:SSL(SecureSocketLayer)、PGP(PrettyGoodPrivacy)、SSH(SecureShell)、(VirtualPrivateNetwork)等等。

Sniff完最重要的工作是分析抓到的封包,因此這里對于各種通訊協(xié)議的封包意義大致講解過一遍,例如該封包的來源與目的地,長度,數(shù)據(jù)內(nèi)容,CRC檢查碼等等。另外一個章節(jié)是有關(guān)網(wǎng)頁平安,包含了閱讀器跟效勞器兩部分,這里大多是講述理論性質(zhì)的部分。

尤其隨著電子商務(wù)的開展,網(wǎng)頁扮演的角色越來越吃重,在往夜間傳遞使用者信息的時機(jī)越來越多,更增加了平安性的顧慮,然而使用者多半對于這方面平安性問題不夠警覺(甚至不理解嚴(yán)重性),只要有cracker使用一些惡意或欺騙的applet或scripts,就有可能將使用者的信息竊取到手,也可以自遠(yuǎn)程將使用者的計(jì)算機(jī)加以控制甚至令其當(dāng)機(jī),使用者對于閱讀網(wǎng)頁時的平安比必需要比過去更加留意。常見的網(wǎng)頁攻擊形式包括:溢位攻擊(bufferoverflow):顧名思義,就是利用bufferoverflow的原理達(dá)成目的的......比方,一個數(shù)組只有100bytes,但我喂給它200bytes的數(shù)據(jù),于是這個數(shù)組裝不下這些數(shù)據(jù),造成了overflow......為什么overflow會有securityhole呢?首先,overflow發(fā)生時,多出來的數(shù)據(jù)會蓋到其它變量上,相信這一點(diǎn)大家早就知道了。

問題是,為什么數(shù)據(jù)蓋到其它變量上時,頂多使程序執(zhí)行錯誤,會嚴(yán)重到出現(xiàn)security的問題嗎?這時,好玩的事情就發(fā)生了.......當(dāng)我們呼叫一個function時,以匯編語言的觀點(diǎn),會將returnaddress堆入stack中。假如這個function宣告了一些local變量,那進(jìn)入這個function之后,會在stack中再空出一塊區(qū)域給這些local變量,當(dāng)要從這個functionreturn回去時,就把這些在stack中的local變數(shù)清掉。

如今好了,bufferoverflowsecurityhole就是在這里發(fā)生了.......假如有某個function宣告了一個localarray,如:intfunc(){inti,j,k;charbuf[16];structabc*x,*y,*z;...}這樣就很明顯了,假如在這個function內(nèi)有了bug,忘記去控制數(shù)據(jù)喂給buf的長度,當(dāng)數(shù)據(jù)喂長一點(diǎn),就可以蓋到這個function的returnaddress指到自己所喂進(jìn)去的code上這時,function執(zhí)行完畢,要return時,它就不會return到原來呼叫它的地方,而會“return〞到我所喂進(jìn)去的那些code,這么一來入侵者就可以為所欲為了!DenialofService(DoS,阻斷效勞攻擊):所謂阻斷效勞攻擊,是攻擊者利用受害者的操作系統(tǒng)、網(wǎng)絡(luò)應(yīng)用程序(效勞)或網(wǎng)絡(luò)通訊協(xié)議的破綻來攻擊受害者,促使目的主機(jī)的系統(tǒng)或效勞發(fā)生癱瘓的情況,可能造成系統(tǒng)資源耗盡、引響正常聯(lián)機(jī)品質(zhì)、網(wǎng)絡(luò)頻寬被占滿、網(wǎng)絡(luò)應(yīng)用程序(效勞)停頓運(yùn)作、系統(tǒng)當(dāng)機(jī)等情形,使正當(dāng)?shù)氖褂谜邿o法正常使用該主機(jī)所提供的效勞。另一種情況是系統(tǒng)管理者為了測試目的嘗試對自己主機(jī)展開攻擊,測試操作系統(tǒng)或是網(wǎng)絡(luò)應(yīng)用程序(效勞)中是否含有可能被攻擊的破綻存在。

像立駭科技(HackersLab)的入侵測試(PenetrationTest)、衛(wèi)道科技的網(wǎng)絡(luò)平安漏空掃瞄儀(NAICyberCopScanner)都可針對企業(yè)內(nèi)的操作系統(tǒng)、網(wǎng)絡(luò)甚至數(shù)據(jù)庫做安康檢查,其它DoS的攻擊都是不合法的,而且動機(jī)通常出自惡意。DistributedDenialofService(DDoS,分布式阻斷效勞攻擊):所謂分布式阻斷效勞攻擊,是運(yùn)用在于受害者的系統(tǒng)資源、網(wǎng)絡(luò)頻寬條件都比攻擊者來的好,假如攻擊者想一對一的攻擊被害者,可能會失敗甚至導(dǎo)致自己的系統(tǒng)或網(wǎng)絡(luò)癱瘓,所以采取一對多的攻擊方式,攻擊者先在一些防范較弱的主機(jī)中種植攻擊程序。

隨后攻擊者對各主機(jī)中的的攻擊程序發(fā)出攻擊命令,要求對目的主機(jī)發(fā)出龐大數(shù)量且多種的封包,龐大的數(shù)據(jù)量會癱瘓目的主機(jī)而使得無法正常提供效勞。DDoS不但可以進(jìn)步成功率,還可以縮短攻擊的時間及減少被發(fā)現(xiàn)的時機(jī)。

※以目前駭客的行徑而言,大多比較傾向于使用威力強(qiáng)大的DDoS攻擊,尤其是針對規(guī)模大的網(wǎng)站時。CGI:一種讓網(wǎng)頁執(zhí)行外部程序的一種接口,正因?yàn)槿绱?,只要?quán)限或設(shè)定有問題,或程序編寫有問題,很容易成為cracker入侵系統(tǒng)的快捷方式。

自動目錄列表:獲得網(wǎng)頁跟目錄下的檔案列表將使得cracker清楚知道該網(wǎng)站構(gòu)造,很容易便能發(fā)覺后門所在甚至下載有問題的程序代碼回去破解分析,對于入侵更為容易使用者認(rèn)證的攻擊:利用一賬號文件跟密碼字典文件的配合,強(qiáng)迫通過網(wǎng)頁認(rèn)證的一種手法。3.NessusNessus官方網(wǎng)站,目前最新釋出的版本為1.0.8,是一種用來偵測網(wǎng)絡(luò)效勞器或工作站的網(wǎng)絡(luò)破綻的工具。

這套偵測系統(tǒng)是Client-Server的方式運(yùn)作,效勞器端包括了使用者賬號的管理以及各種破綻測試的Plug-ins,而Client那么利用效勞器端所提供的各種Plug-ins來測試工作站或效勞器并產(chǎn)生報告,報告的格式包括了HTML、XML、NSR(Nessus本身的存檔格式)、TXT、TEX(LaTex格式)。其Plug-ins自有一套語法叫做NASL(NessusAttackScriptsLanguage),可以自訂對特定的連接埠進(jìn)展封包測試,藉以判斷是否為破綻(早期使用C語言來作為Plug-ins的語法,但以被淘汰)

一、安裝安裝的方式分為Server跟Client兩部分。首先Server必須安裝在UNIX環(huán)境下,(已試過FreeBSD:ports安裝跟Linux:rpm安裝)這部分沒有什么問題,裝下去就對了,接下來必須安裝Plug-ins(假設(shè)是不裝Plug-ins,Nessus什么也不會測),Plug-ins可以選擇一個一個下載后拷到指定目錄即可,不過正確的作法應(yīng)該是使用CVS的方式來維護(hù)更新Plug-ins的版本。

CVS系統(tǒng)又分作CURRENT跟STABLE兩種,STABLE版本但講究穩(wěn)定,許多新釋出的Plug-ins并沒有包括在里面,而CURRENT雖然有最新的Plug-ins,但測試不見得穩(wěn)定正確,有可能將你的受測工作站或效勞器損害,因此要使用那個版本請自行斟酌。安裝方式如下:1.設(shè)定環(huán)境變量$exportCVSROOT=":pserver:anonymous@:/usr/local/cvs"2.登入CVS系統(tǒng)密碼為“anon〞,只有第一次登入會需要密碼,以后會自動記載你系統(tǒng)的某一個地方$cvslogin3-1.假如要抓取Nessus程序STABLE版本$cvs-z3checkout-rNESSUS_1_0nessus-libraries$cvs-z3checkout-rNESSUS_1_0libnasl$cvs-z3checkout-rNESSUS_1_0nessus-core$cvs-z3checkout-rNESSUS_1_0nessus-plugins3-2.假如要抓取Nessus程序CURRENT版本$cvs-z3checkoutnessus-libraries$cvs-z3checkoutlibnasl$cvs-z3checkoutnessus-core$cvs-z3checkoutnessus-plugins4.以后要檢查更新部分時只要打$cvs-z3update-Pnessus-libraries$cvs-z3update-Plibnasl$cvs-z3update-Pnessus-core$cvs-z3update-Pnessus-plugins完成!!Nessus是一套強(qiáng)大的破綻測試工具,但是對于他產(chǎn)生的報告不夠完好是它的一大致命傷,目前他所采行的方法是把破綻報告及修補(bǔ)破綻的方法寫死在Plug-ins里,但并不是每一個Plug-ins撰寫者都有寫上修補(bǔ)方式這部分的說明,因此我們的目的是寫一個ReportReader來讀取Nessus所產(chǎn)生的報告并自動補(bǔ)上破綻相關(guān)的網(wǎng)址(報告格式為HTML或XML),補(bǔ)強(qiáng)的方式是連結(jié)CERT的搜尋器來產(chǎn)生,目前遇到的問題在于我們要選擇哪一種語法來寫這支ReportReader的程序(VB除外),也使我們的研究主題由Nessus暫時轉(zhuǎn)到了程序語言的部分,因此Nessus暫時在此打住4.ScriptsLanguage截至目前為止,我們嘗試過的語言Tcl、Perl、Python都是屬于ScriptingLanguages,他們跟C或JAVA這種systemprogramminglanguages有很大的差異。

SL會有一組派得上用場的組件(ponent),用別的語言寫成。SL不會從頭開場,而是結(jié)合已經(jīng)寫好的組件。

比方說,Tcl跟VisualBasic可以用來管理使用者接口組件,而Unixshellscript可以把組件當(dāng)作"filter",來組成一條"消費(fèi)線",制造所要的信息。SL可以用來擴(kuò)展已經(jīng)存在組件的功能,而很少用來開展復(fù)雜的數(shù)據(jù)構(gòu)造、算法。

這些東西應(yīng)該由組件提供。因此,SL常被稱為"黏接語言"或者"系統(tǒng)整合語言"。

為了簡化組合組件的工作,SL通常沒有型態(tài)。所有東西看起來,用起來都一樣,也可以交換著用。

比方說,在Tcl或VB中,同一個變量既能存字符串,又能存整數(shù)。而程序代碼跟數(shù)據(jù)可以互通,因此可以在線產(chǎn)生新程序。

由此可以看到SL對于文字?jǐn)?shù)據(jù)的處理蠻擅長的。V像這樣無型態(tài)的語言更容易結(jié)合組件。

因?yàn)樗⒉粚?東西該如何使用"做任何限制。組件會怎么用,搞不好連原先的設(shè)計(jì)者都不清楚。

換句話說,組件的使用是有彈性的,不同狀況下有不同用法。對于ScriptsLanguage有點(diǎn)概念以后

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論