国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > AJAX > 正文

Ajax 實現網站劫持的檢測方法

2024-09-01 08:27:05
字體:
來源:轉載
供稿:網友

https可以徹底解決劫持的問題。但是一般虛擬主機都不支持 https,難道http只能任流氓們惡意劫持么?

既然只有第一次訪問時才會出現抽獎鏈接,通過JS在瀏覽器中檢測,如果發現 被植入的 代碼,則自動刷新網頁,就可以解決被劫持的問題了。

現在要做的就是得到 被植入的代碼。找了一圈,沒有找到檢查的工具。網站傳輸到客戶的瀏覽器,需要三個步驟:【1】服務器 -> 【2】運行商 -> 【3】客戶瀏覽器。

劫持出現在第【2】步,因為離開了服務器,已經不受控制了。但是第【3】部的瀏覽器可以通過JS來控制。通過 Ajax 上傳 客戶最終獲取到的代碼,就可以對進行分析了。

運行效果如下:

<?php //根據訪問域名,創建不同的目錄 $log_path = $_SERVER['SERVER_NAME']; if( !is_dir($log_path) ){ mkdir($log_path); } //根據訪客IP,分別記錄 $log_path .= '/' . $_SERVER['REMOTE_ADDR']; if( !is_dir($log_path) ){ mkdir($log_path); } //按天分組 $log_path .= '/' . date('Y-m-d', time()); if( !is_dir($log_path) ){ mkdir($log_path); } //根據時間生成文件名 $log_file = $log_path . '/' . date('His', time()) . '_' . rand() . '.html'; //保存日志 $html = ''; $html .= 'URL:/' . post('url') . '<hr>'; $html .= 'HEAD:<br><textarea cols="200" rows="40">' . post('head') . '</textarea><hr>'; $html .= 'BODY:<br><textarea cols="200" rows="40">' . post('body') . '</textarea>'; file_put_contents($log_file, $html); die('{"help":"http://www.miaoqiyuan.cn/p/browser-page-tracert/","log_file":"' . $log_file . '"}'); //調用的函數 function post($input){ $post_str = isset($_POST[$input]) ? $_POST[$input] : ''; $post_str = str_replace('//', '', $post_str); $post_str = iconv_substr($post_str, 0, 50000); //防止惡意上傳假日志 return $post_str; }?>

調用很簡單,比如將 上邊的php代碼保存到了 /log/page_tracert.php,然后在整站頁面中都加入 以下的代碼,就可以獲取到 所有的訪問記錄了。根據訪問記錄,得到 被植入的代碼后,就可以進行檢測腳本的開發了。

$(function(){ $.post('/log/page_tracert.php',{ url : location.href, head : $('head').html(), body : $('body').html(), },function(){});});            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 斗六市| 宣汉县| 比如县| 沙雅县| 年辖:市辖区| 收藏| 隆昌县| 桦甸市| 宝丰县| 南安市| 界首市| 长沙县| 个旧市| 镇坪县| 和硕县| 敦煌市| 正安县| 武夷山市| 双江| 从化市| 正蓝旗| 保靖县| 都江堰市| 华亭县| 博乐市| 邻水| 乌拉特前旗| 旬阳县| 临洮县| 平安县| 旅游| 古交市| 涞源县| 梅河口市| 龙山县| 克山县| 航空| 明光市| 达日县| 宜宾县| 固原市|