YAK語言簡介
YAK是國際上首個致力于網(wǎng)絡(luò)安全底層能力融合的垂直開發(fā)語言,提供了非常強大的安全能力。Yak是絕大部分 “數(shù)據(jù)描述語言 / 容器語言” 的超集,具備Go所有能力與庫生態(tài),VSCode插件等,語法可自定義,是圖靈完備的腳本語言,完全國產(chǎn)。通過函數(shù)提供各類底層安全能力,包括端口掃描、指紋識別、poc框架、shell管理、MITM劫持、強大的插件系統(tǒng)等。
YAKIT單兵工具簡介
Yakit是基于yak語言開發(fā)的網(wǎng)絡(luò)安全單兵工具,旨在打造一個覆蓋滲透測試全流程的網(wǎng)絡(luò)安全工具庫。受限于Yak使用形式,用戶必須學(xué)習(xí) Yak 語言并同時具備對安全的一定理解。為了讓 Yak 本身的安全能力更容易被大家接受和使用,我們?yōu)閅ak編寫了gRPC服務(wù)器,并使用這個服務(wù)器構(gòu)建了一個客戶端:Yakit,通過界面化GUI的形式,降低大家使用Yak的門檻。
2.1 Burpsuite 的年輕中國挑戰(zhàn)者
Burpsuite幾乎成為全球WEB安全從業(yè)者必裝的安全測試工具,然而近年來竟然沒有一個可替代的解決方案。破解版被投毒風(fēng)險高、商業(yè)版太貴、插件難寫、依賴java等等問題逐漸顯露。我們團隊基于yak順手實現(xiàn)了BurpSuite的核心功能,期望給所有的從業(yè)者一個新的選擇。完全替代并不是我們終極目標(biāo),替代并超越,切實降低門檻,提升從業(yè)者工作效率,才是我們的追求。
當(dāng)前,我們已經(jīng)實現(xiàn)了BurpSuit常用的功能,包括攔截并修改請求/返回報文、history模塊、repeater模塊、intruder模塊,并且在我們的fuzz模塊中創(chuàng)新性的實現(xiàn)了GUI標(biāo)簽fuzz,具備更好的可擴展性。
HTTP History:
WEB Fuzzer:
被動漏洞檢測系統(tǒng):
2.2 Poc/Exp超集
在實戰(zhàn)安全測試過程中,我們經(jīng)常面臨一個需求,即已知對方使用了weblogic/struts2等,需要一鍵檢測是否存在指定漏洞,然而這么簡單的需求我們當(dāng)下卻要打開各種專用工具不停切換,甚至為了安裝某個工具而不得不切換Windows/Linux,或者安裝一堆復(fù)雜的依賴。在yakit上,我們將致力于提供一站式的解決方案,您只需要輸入目標(biāo),點擊開始檢測按鈕,即可快速得到結(jié)果。
為了快速提升poc的檢測能力,我們在yak語言中原生集成了nuclei(MIT協(xié)議),當(dāng)然,在插件模塊中,你可以基于yak/yaml編寫各種你想要的檢測能力,并將插件快速展示到左側(cè)菜單欄中。快來跟我們一起完善Yakit插件吧
2.3 ”地表最強“的插件系統(tǒng)
作為一個單兵工具平臺,自然離不開可快速擴展的插件系統(tǒng)。理論上一個帶界面的插件,編寫者需要對前端、后臺都比較熟悉,這增大了開發(fā)者的進入門檻。與其他平臺不同的是,我們在設(shè)計時,插件核心代碼全部用yak實現(xiàn),并且可以通過yakit庫實現(xiàn)與界面的交互,除此之外,為了配得上”地表最強“,您還可以參考以下文章的描述:
插件設(shè)計思路
插件編寫指南
2.4 Teamserver設(shè)計
由于 Yak 核心引擎與 Yakit 的分離式安裝,Yakit 僅僅作為一個客戶端而存在,Yakit 的使用理所當(dāng)然就應(yīng)該存在兩種模式。
1.本地模式:默認(rèn)啟動一個隨機端口的yak grpc 服務(wù)器
2.遠(yuǎn)程模式:
yak grpc
可以啟動在任何平臺 / 任何網(wǎng)絡(luò)位置,包括
遠(yuǎn)端托管主機 ECS/VPS
本地個人 PC
內(nèi)網(wǎng)環(huán)境
除此以外,我們還創(chuàng)新性的加入了brige模式,可方便的將內(nèi)網(wǎng)通過反彈模式映射到公網(wǎng),在這種模式下,我們不在需要安裝frp之類的端口轉(zhuǎn)發(fā)工具,而是在一個GUI界面下,執(zhí)行內(nèi)網(wǎng)橫向移動操作,極大的提升了測試效率。
2.5 原生的JAVA反序列化能力支持
在當(dāng)下環(huán)境,我們要檢測java反序列化漏洞,在生成payload階段,我們通常需要借助ysoserial,然而這種解決方案不僅需要安裝java環(huán)境,還甚至需要安裝指定版本的java才行。而yakit則使用yak原生實現(xiàn)了java反序列化協(xié)議的支持,如此一來,我們即可方便的通過編寫yak腳本快速對目標(biāo)進行測試。
該部分的使用詳情請參見文章”新年獻禮:使用 Yakit 打破 Java 序列化協(xié)議語言隔離“
我們的目標(biāo)
Yakit作為Burpsuite 的年輕中國挑戰(zhàn)者,我們的第一個目標(biāo)是,成為像Burpsuite一樣有技術(shù)深度的產(chǎn)品,讓Burpsuite的盜版用戶能有一個更好、更安全的工具去選擇和使用。
但腳步卻不僅僅停在這 里,我們的夢想是,成為安全領(lǐng)域的matlab,擁有強大且豐富的算法能力,成為安全領(lǐng)域的基座。Yak和Yakit想做的從來不是像現(xiàn)在安全工具一樣的孤島,而是通過融合,為大家提供一個擁有強大且完備安全能力的產(chǎn)品。
Yak和Yakit從開源到編寫包含實戰(zhàn)案例的安全研發(fā)教程,以及Yakit的個性自主化編輯,都在告訴大家一個理念,我們不單單只是想要為大家提供好用的工具,而是為了全面提升大家的安全能力,真正達到人與產(chǎn)品的共同進步。
業(yè)內(nèi)大多產(chǎn)品都強調(diào)傻瓜式的一鍵操作與結(jié)果可視化,這也是Yakit和Yak最大的不同,我們強調(diào)的是用戶在操作中的參與感,在不斷地學(xué)習(xí)中,像升級打怪一樣,從小白用戶蛻變成專業(yè)用戶,實現(xiàn)國內(nèi)安全從業(yè)人員的能力提升,形成自有的安全壁壘,這才是我們團隊的終極目標(biāo)。
官網(wǎng)安裝及使用教程
https://www.yaklang.io/docs/startup
更多關(guān)于“網(wǎng)絡(luò)安全培訓(xùn)”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學(xué),課程大綱緊跟企業(yè)需求,更科學(xué)更嚴(yán)謹(jǐn),每年培養(yǎng)泛IT人才近2萬人。不論你是零基礎(chǔ)還是想提升,都可以找到適合的班型,千鋒教育隨時歡迎你來試聽。