幺妹直播官方版_幺妹直播直播视频在线观看免费版下载_幺妹直播安卓高清版下载

首頁 > 經(jīng)驗 > 關鍵詞  > 日志寶最新資訊  > 正文

網(wǎng)站安全分析:CSRF攻擊案例分析報告

2012-08-28 13:49 · 稿源:站長之家

站長之家(chinaz.com)8月28日消息:站長之家從日志寶安全團隊獲悉,近日,某站長在使用日志寶分析日志時發(fā)現(xiàn),一些可疑IP地址會定期對網(wǎng)站第三方接口產(chǎn)生大量訪問,影響了網(wǎng)站正常業(yè)務的運行。日志寶安全團隊在與該站長進行溝通后判定這是一次典型的CSRF攻擊。

針對此次攻擊事件,日志寶安全團隊發(fā)布了《日志寶-CSRF攻擊案例分析報告》:

事件背景:

1、 站長在使用日志寶進行日常分析時發(fā)現(xiàn),該IP地址在top20統(tǒng)計中的訪問量明顯高于第2位的IP地址訪問量,并產(chǎn)生出大量異常訪問

2、 該網(wǎng)站第三方接口主要功能是通過網(wǎng)絡電話與用戶取得聯(lián)系,很多用戶接到投訴,表示并沒有使用過該接口,并且收到了大量的未知來電

3、 在日志寶安全分析報告中發(fā)現(xiàn)大量敏感URL訪問,并且訪問源頭與該ip地址吻合

針對以上問題,通過使用日志寶對網(wǎng)站日志進行安全分析后發(fā)現(xiàn),日志文件中存在大量類似以下訪問請求:

x.x.x.x - - [25/Aug/2012:00:18:05 +0800] "GET /manage/call.php?u=1234&sms=13812345678 HTTP/1.1" 200 3284

隨后聯(lián)系用戶獲得了該腳本的源代碼,發(fā)現(xiàn)該腳本文件存在3處編程安全問題:

1、 該腳本文件沒有對用戶登錄信息做權限驗證,外界用戶可無需登錄直接訪問該接口

2、 該腳本文件采用$_REQUEST獲取參數(shù),沒有區(qū)分GET和POST兩種方式,導致可以直接在URL中構(gòu)造表單參數(shù)

3、 該腳本文件沒有對用戶身份做確認,結(jié)合XSS漏洞可以以任意用戶身份發(fā)起訪問請求,通過第三方網(wǎng)絡電話接口給任意用戶撥打騷擾電話,形成一次CSRF攻擊。

針對這些問題,日志寶安全團隊幫助用戶提出了代碼層面的修復方案:

1、 增加權限控制,在使用接口時必須驗證用戶是否為本站已登錄用戶。

2、 針對表單變量采用$_POST方式獲取,禁止使用$_REQUEST獲取表單變量。

3、 防御CSRF攻擊(3種方法):

3.1 添加驗證碼,此方法會額外增加一次用戶交互行為,在網(wǎng)站用戶體驗上會打折扣,影響接口的使用轉(zhuǎn)化率。

3.2 判斷接口訪問來源(HTTP Referer),此方法通過判斷網(wǎng)頁的Referer來檢測用戶是否是通過正常調(diào)用訪問該接口,但是由于Referer可以在客戶端偽造,故并不能很好的防止CSRF攻擊。

偽造Referer的代碼如下:

<?php

header("Referer: www.rizhibao.com");

$a = file_get_contents('https://www.secrule.com');

echo $a;

?>

通過抓包可以看到referer已經(jīng)被篡改:

3.3 添加一次性會話令牌(token),此方法不會增加額外的用戶交互行為,并且能夠有效的防止CSRF攻擊。代碼實現(xiàn)原理如下:

首先創(chuàng)建一個一次性的隨機token值,并將token值存放在session中

$decsrf = md5(mt_rand(0,mt_getrandmax()).'this_a_very_strong_key');

$_SESSION['decsrf'] = $decsrf;

其次在前臺POST表單中添加隱藏input元素,自動提交token值到后臺驗證頁面

<input type="hidden" name="decsrf" value="<?=$descrf?>">

最后在后臺驗證頁面判斷該請求是否合法,檢測用戶傳遞過來的token值是否和seesion中保存的token值一致

if(empty($_POST['decsrf']) || $_POST['decsrf']!= $_SESSION['decsrf']){

$this->errmsg .= "<li>數(shù)據(jù)異常!</li>";

exit;

}else{

unset($_POST['decsrf']);//銷毀一次性token令牌

正常處理邏輯

}

4、 增加時間限制,限制該接口的訪問請求時間間隔,比如30秒內(nèi)只能訪問一次該接口,防止接口調(diào)用過于頻繁消耗服務器資源。

日志寶已經(jīng)協(xié)助用戶成功處理了此次安全攻擊事件。通過此次安全攻擊事件可以看出,CSRF攻擊的目標是網(wǎng)站的用戶而不是網(wǎng)站服務器本身,雖然不同于SQL注入攻擊可以直接獲取網(wǎng)站的敏感數(shù)據(jù),但是通過CSRF攻擊可以依托于網(wǎng)站自身業(yè)務對正常用戶發(fā)起釣魚、欺詐等其他惡意行為,影響網(wǎng)站自身的正常業(yè)務運轉(zhuǎn),給網(wǎng)站帶來極大的負面影響,站長們還需多多關注此類攻擊行為。

注明:本安全報告來自日志寶,官方網(wǎng)站www.rizhibao.com。

舉報

  • 相關推薦

熱文

  • 3 天
  • 7天