操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    網鼎杯

    2020年網鼎杯馬上開始了,來做一下歷年真題

    打開題目

    點擊發帖-提交,跳轉到一個登錄界面,不過已經提升了用戶名和密碼

    爆破后面三位,登錄成功

    登錄進去就可以發帖了,但也不有想法,注入點試了不行,用掃描,發現存在.git文件

    那應該存在.git文件泄露,用下載發現有一個.php,但是代碼有缺失

    查一下之前提交的版本,單獨用git log不能全部顯示,直接用git log --all

    可以看到,head指針指向的是最早一次,通過git reset --hard 命令將head指向第一個,得到完整的.php

    
    include "mysql.php";
    session_start();
    

    萬能數據庫注入插件_chrome 插件 js注入_struts數據注入的方式

    if($_SESSION['login'] != 'yes'){ header("Location: ./login.php"); die(); } if(isset($_GET['do'])){ switch ($_GET['do']) { case 'write': $category = addslashes($_POST['category']); $title = addslashes($_POST['title']); $content = addslashes($_POST['content']); $sql = "insert into board set category = '$category', title = '$title', content = '$content'"; $result = mysql_query($sql);

    struts數據注入的方式_萬能數據庫注入插件_chrome 插件 js注入

    header("Location: ./index.php"); break; case 'comment': $bo_id = addslashes($_POST['bo_id']); $sql = "select category from board where id='$bo_id'"; $result = mysql_query($sql); $num = mysql_num_rows($result); if($num>0){ $category = mysql_fetch_array($result)['category']; $content = addslashes($_POST['content']); $sql = "insert into comment set category = '$category', content = '$content', bo_id = '$bo_id'"; $result = mysql_query($sql); }

    萬能數據庫注入插件_chrome 插件 js注入_struts數據注入的方式

    header("Location: ./comment.php?id=$bo_id"); break; default: header("Location: ./index.php"); } } else{ header("Location: ./index.php"); } ?>

    后臺對輸入的參數通過()對預定義字符進行轉義,加上\,預定義的字符包括單引號,雙引號,反斜杠,NULL。放到數據庫后會把轉義符\去掉后,存入數據庫中。

    發帖的時候所有參數進行了轉義才放到sql語句中,但是在中萬能數據庫注入插件,對于的值從數據庫取出來沒有進行轉義,直接拼接到sql 語句中,這就存在二次注入的可能。

    二次注入和普通的sql注入區別就是,二次注入是把惡意代碼放入數據庫中,執行后通過等語句把結果回顯,一般存在于語句中

    思路就是通過發帖,在中放入,存入數據庫中萬能數據庫注入插件,不過這一過程因為對單引號等作了轉義,不會被觸發,只有在發帖成功后,在留言,調用語句時因為沒有對數據庫取出的進行轉義,直接拼接才會觸發。

    chrome 插件 js注入_struts數據注入的方式_萬能數據庫注入插件

    發帖

    :0‘+hex(()),=324,/*

    2.在提交留言處輸入*/#

    這樣 sql語句拼接成:

    insert into comment
                set category = '0'+hex(database()),content=324,/*,
                    content = '*/#',
                    bo_id = '$bo_id'
    

    留言顯示324,說明插入成功,但是在并沒有回顯,改一下:a',=()),/*

    重復上面操作

    回顯數據庫名為ctf,之后查表等發現都不行,看了師傅們的,發現這里是用sql來讀取文件。模板: (‘文件絕對路徑’);

    首先讀取/etc/,這個文件存放了系統用戶和用戶的路徑

    萬能數據庫注入插件_struts數據注入的方式_chrome 插件 js注入

    :a',=( (('/etc/'))),/*

    讀取成功,可以知道www用戶(一般和網站操作相關的用戶,由中間件創建)的目錄是/home/www,可以查詢這下面的.

    :a',=( (('/home/www/.'))),/*

    得到歷史記錄里之前所執行的命令

    可以看到html.zip里面有一個.文件,在/var/www/html目錄下刪除了,但是在/tmp/下只是刪除了壓縮包,還存在.文件,讀取這個文件。

    Mac OS 保存文件夾的自定義屬性的隱藏文件。通過.可以知道這個目錄里面所有文件的清單

    :a', =( (('/tmp/html/.'))),/*

    但是沒有顯示完全,改為:a', =( hex(('/tmp/html/.'))),/*

    hex解碼以后通過--得到

    :a',=( hex(('/var/www/html/f.php'))),/*

    解碼后得到flag

    考得知識點好多啊,tnl

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有