色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

紅隊攻防之JS攻防

jf_73420541 ? 來源:易安聯 ? 作者:易安聯 ? 2024-05-27 10:16 ? 次閱讀

前言:

隨著當前攻防水平的不斷提高,實戰攻防過程中,經常能遇到前端的參數被各種各樣的方式加密的情況。毫無疑問,這種方式能夠防止很多腳本小子的腳步,但是很多網站就存在“金玉其外,敗絮其內“的情況,將傳遞的參數加密了事,忽略很多系統本身存在的安全風險。本文以實戰角度出發,介紹面對這種前端加密情況下的攻防技巧。

測 試 思 路

常見的JavaScript逆向相關的技巧,包括瀏覽器調試、Hook、AST、無限Debugger的繞過以及模擬調用JavaScript等,但是在實際對抗過程中,如何將技巧形成一個行之有效的“套路“來應對JavaScript逆向的流程。一般來說,在實戰過程中,JavaScript可以分為三大部分:尋找入口、調試分析和模擬執行。

▌尋找入口:

關鍵步驟,逆向大部分情況下就是分析加密參數是如何來的,實戰過程中,遇到請求中的加密參數比如token、sign等,這個加密邏輯是如何形成的?這個關鍵邏輯可能寫在某個方法、或者隱藏在某個關鍵變量中,眾所周知,一個網站加載了很多JavaScript文件,如何尋找這個加密邏輯就是我們尋找入口所要做的事情。

▌調試分析:

找到入口之后,我們找到這個參數是在某個方法里面執行的,那么到底是如何執行這個加密邏輯的呢?里面究竟調用了多少加密算法,經歷了多少次賦值和轉換呢?這些都是我們要思考的點,以便于我們后續進行模擬調用或者邏輯改寫。在這個過程中我們主要是借助瀏覽器的調試工具打斷點進行分析,或者借助反混淆工具進行代碼的反混淆等。

▌模擬執行:

經過調試分析后,我們已經大致弄清楚整個加密邏輯,但是我們最終的目的就是如何加解密參數,方便我們進行攻擊操作。因此這個過程就需要對整個加密邏輯進行復寫或者模擬執行,比如我們輸入的是一些惡意代碼,經過調用后,就是服務器能夠識別的加密代碼,從而完成一次攻擊。

01

尋找入口

常見的尋找入口的操作很多,其中包括:查看請求、搜索參數、分析發起調用、打斷點、Hook等操作,這里來分別介紹一下:

「查看請求」

以一次訪問電影網站為例,可以看到首頁有很多數據,這些數據肯定是逐個請求返回的,我們就要思考,究竟是哪一個請求返回的內容呢?打開瀏覽器開發者工具-->打開網絡面板-->點擊搜索按鈕,比如我們這里就搜索唐伯虎點秋香,如下圖所示:

wKgaomS0oWCAckFNAAJvwwHc524674.png

此時可以看到對應的搜索結果,點擊搜索到的結果,我們就可以定位到對應的響應結果的位置,如下圖所示:

wKgaomS0oWaANr9zAAPhXSFR7x8953.png

找到響應之后,我們就可以順便找到是誰發起的請求了,如下圖所示:

wKgZomS0oW2AA_SBAAPxkybj1-8687.png

比如,這里我們想找到我們想要的數據所對應的請求位置了。很明顯,請求方法為GET,參數是limit、offset、token。一般來說,可以通過這種方法來尋找最初的突破口,如果這個請求帶有加密參數,就需要知道這個參數究竟是在哪里生成的。如果這個參數沒有加密,爬蟲選手可以直接開爬,就可以獲取該系統所有的電影數據。思考一下,如果電影數據是身份信息會怎么樣呢?

「搜索參數」

在上一步中,我們已經找到了最初的突破口,明確了關鍵請求是如何發起的,帶有什么加密參數,這里發現一個關鍵參數token,現在就是去尋找token前世今生的時候了。最簡單的方法就是直接進行全局搜索。一般來說,參數名就是一個普通的字符串,這里的參數名就叫做token,這里的某個JavaScript文件中肯定有這個字符串。這里有一個搜索技巧,點擊ctrl+shift+F,開啟全局搜索,如下圖所示:

wKgZomS0oZ2AK37fAAB2l0EgT7o375.png

這是一個資源搜索的入口,可以搜索我們下載下來的JavaScript文件的內容,這里我們輸入token來進行搜索。

wKgZomS0oaOAayPSAAFHgk5ZpAE180.png

這樣我們就找到一些關鍵點了,一共五個結果,結果不多,我們可以進一步分析。

「調用分析」

搜索是一種查找入口的方式,這是從源碼層面進行查找,我們也可以從發起調用邏輯的流程進行分析。比如打開Network請求里面的Initiator查看當前請求構造的相關邏輯。

wKgaomS0oamAcFEfAAM2jsLpe6o148.png

點擊光標,會有完整的請求調用流程,我們點進去就可以尋找到相關代碼邏輯。

wKgaomS0obuACK53AAMRz8u3GBY890.png

很明顯,紅框處是我們尋找到的入口點參數,我們找到了入口點。

wKgZomS0odWAB9u5AAErzLxF1-w526.png

「斷點分析」

我們還可以通過一些端點進行入口的查找,比如XHR斷點,DOM斷點、事件斷點等。這里我們在開發者工具Sources面板里添加設置,比如這里我們添加了XHR斷點和全局Load時間斷點,如圖所示:

wKgZomS0pCyAbsY5AAGhFGBnWAU508.png

我們在下圖紅框處找到了入口點。

wKgaomS0pDKAFJCCAAGJ21YFReo253.png

「Hook」

在實戰過程中Hook也是常用的查找入口點的功能。一些代碼搜索或者斷點并不能很有效地找到對應的入口,這種情況下就可以用Hook。比如說,對一些常見的加密和編碼算法、常用的轉換操作都可以進行Hook,比如Base64編碼、Cookie的賦值、JSON的序列化。常用Hook方式就是通過TemporMonkey來實現。具體實現過程本篇文章暫不詳述。

02

調試分析

找到常見入口后,我們需要進行的就是整個流程的調試分析,這個步驟中,我們常用到一些格式化、斷點調試、反混淆的手法來輔助整個流程分析。

「格式化」

格式化過程很重要,能夠提高代碼的可讀性,一般情況下很多JavaScript代碼都是經過打包和壓縮的。多數情況下,我們可以使用Sources面板下JavaScript窗口左下角的格式化按鈕對代碼進行格式化。如下圖所示:

wKgaomS0pESAE8bWAAKrcF7VroU965.png

「斷點調試」

代碼格式化之后,我們就需要進行正式調試,基本操作就是給想要調試的代碼添加斷點,同時在對應的面板觀察變量值。我們知道入口點需要三個參數,核心加密參數是token,那么我么應該著重關注token的生成邏輯,如下圖所示,

wKgaomS0pEyAMcKhAAPzaqn9Zzk430.png

不斷回溯,找到我們的token生成邏輯。

wKgaomS0pFOAYnIJAABhUKZRxXs483.png

這里的加密邏輯就是:▲將/api/movie放到一個列表中;▲在列表中添加當前時間戳,調用push方法,添加到列表中;▲將列表內容用逗號拼接;▲將拼接結果進行SHA1編碼;▲將編碼的結果和時間戳再次拼接;▲將拼接后的結果進行Base64編碼。這里結果用python模擬,將過程的值輸出如下圖:

wKgaomS0pFmAYZSoAAAQ9_JbVto717.png

我們已經獲取到加密字段,接下來能干的事情就不詳述。

「反混淆」

實戰過程中可能遇到各種各樣的混淆方式,比如控制流扁平化、數組移位等。對于這種我們可以嘗試AST技術來對代碼進行還原。比如下圖

wKgaomS0pGCAU0eIAADSK4agsqs974.png

這里while循環內部,通過一些判斷條件執行某些邏輯,這種邏輯我們無法直接判斷執行順序,對于這種類似的混淆技術,我們可以嘗試AST進行還原。

03

模擬執行

經過一系列調試,我們已經了解其中的加密邏輯,接下來就是調用執行的過程了。常見的調用流程如下:●Python改寫或者模擬執行適用于整體邏輯不復雜,我們可以嘗試用Python來實現整個加密流程。●JavaScript模擬執行+API適用于Python不兼容部分JavaScript的情況,而Node.js天生就支持JavaScript,為了更加通用實現JavaScript的模擬調用,我們可以用express類模擬JavaScript,實現跨語言調用。●瀏覽器模擬執行適用于調試分析結果不理想的情況,由于整個邏輯都是在瀏覽器中運行,我們可以利用Selenium、PlayWright來嘗試將一些JavaScript代碼,得到一些返回結果。

總 結

本篇文章,我們從實戰角度出發,對整個JavaScript逆向的流程進行了簡單介紹,通過三大步驟——尋找入口、調試分析、模擬執行來梳理JavaScript逆向過程中常用技巧,文中部分內容由于篇幅限制,不夠詳實,僅提供思路,詳細內容歡迎加《權說安全》技術交流群進行交流。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 網絡安全
    +關注

    關注

    10

    文章

    3175

    瀏覽量

    59912
收藏 人收藏

    評論

    相關推薦

    MCU是如何被破解的?(附MCU攻防技巧)

    這篇文章是俄國人Sergei P.Skorobogatov就讀英吉利劍橋大學博士論文,講解了各種MCU的攻防技術,堪稱一部小百科全書。對于志在研究MCU防護的筒子,能給你很多參考思路:但對于想當黑客的人,我們對后果概不負責。
    發表于 09-13 10:49 ?5774次閱讀

    針對工控系統上位機操作系統攻防案例有哪些?

    針對工控系統上位機操作系統攻防案例有哪些?分別有哪些步驟?
    發表于 07-15 06:57

    你知道在工控安全項目中進行攻防演示的案例有哪些嗎

    你知道在工控安全項目中進行攻防演示的案例有哪些嗎?
    發表于 09-29 06:46

    講講Hook技術的攻防對抗思路

    1、論Hook技術的攻防對抗  首先,簡單認識下Hook 技術。  Hook技術是一門廣泛用于計算機攻防對抗的技術。它可以監視系統或者進程中的各種事件消息,截獲發往目標窗口的消息進行處理。  我們
    發表于 09-28 11:12

    黑客任務實戰服務器攻防

    黑客任務實戰服務器攻防篇網站服務器的黑客攻防一直是網絡安全中最重要的一部分。本書作者在經過數月的努力之后,終于將網站服務器的黑客攻防以深入淺出、簡單易懂的方
    發表于 10-22 11:03 ?0次下載
    黑客任務實戰服務器<b class='flag-5'>攻防</b>篇

    基于蜜網的網絡攻防平臺的設計與實現

    本文首先介紹了以往網絡攻防平臺的不足,然后采用最新的第三代蜜網技術,設計了可滿足不同攻擊方法和網絡拓撲結構的網絡攻防平臺。該平臺在實際使用中達到了預定的設計
    發表于 06-06 15:20 ?13次下載

    基于HLA的導彈攻防仿真系統的設計與實現

    基于HLA 建立仿真應用系統是提高作戰仿真活動效率的有效途徑。分析了導彈攻防仿真系統的功能,并依據HLA的基本概念、方法和原理對分布式導彈攻防仿真系統進行系統設計,建
    發表于 09-03 09:53 ?26次下載

    基于HLA的導彈攻防仿真系統的設計與實現

    基于HLA 建立仿真應用系統是提高作戰仿真活動效率的有效途徑。分析了導彈攻防仿真系統的功能,并依據HLA的基本概念、方法和原理對分布式導彈攻防仿真系統進行系統設計,建
    發表于 12-12 13:59 ?17次下載

    黑客攻防入門與進階ddd

    黑客攻防入門與進階ddd黑客攻防入門與進階ddd
    發表于 02-23 15:45 ?9次下載

    基于FlipIt模型的非對稱信息條件下攻防博弈模型

    針對目前缺少對高級持續威脅(APT)攻擊理論建模分析的問題,提出了一種基于Fliplt模型的非對稱信息條件下的攻防博弈模型。首先,將網絡系統中的目標主機等資產抽象為目標資源節點,將攻防場景描述為攻防
    發表于 11-28 15:06 ?0次下載
    基于FlipIt模型的非對稱信息條件下<b class='flag-5'>攻防</b>博弈模型

    基于攻防信號博弈模型的防御策略選取方法

    當前基于博弈理論的防御策略選取方法大多采用完全信息或靜態博弈模型,為更加符合網絡攻防實際,從動態對抗和有限信息的視角對攻防行為進行研究。構建攻防信號博弈模型,對策略量化計算方法進行改進,并提出精煉貝
    發表于 02-11 10:44 ?0次下載

    AI技術在網絡安全攻防中可發揮重要作用

    在網絡安全的攻防演練中,攻擊方叫做藍,防守方叫做,藍的水平往往決定了這場攻防演練的質量。
    發表于 08-25 10:35 ?1080次閱讀

    用于攻防/滲透痕跡隱藏的工具

    注意:此工具是開源的,僅用于協助的操作,作者對任何禁止使用此工具所造成的后果概不負責。僅在您有權測試的機器上使用它。
    的頭像 發表于 05-10 09:27 ?565次閱讀
    用于<b class='flag-5'>攻防</b>中<b class='flag-5'>紅</b><b class='flag-5'>隊</b>/滲透痕跡隱藏的工具

    攻防快速打點

    導讀: 在整個攻防體系中,打點是最基礎也是最重要的一步。它對于攻防比賽中取得快速和高效
    的頭像 發表于 05-27 10:20 ?263次閱讀
    <b class='flag-5'>紅</b><b class='flag-5'>隊</b><b class='flag-5'>攻防</b><b class='flag-5'>之</b>快速打點

    華為安全大咖談 | 論道攻防第1期:攻防演練之三十六計——開篇

    本期講解嘉賓 凡戰者,以正合,以奇勝 國家級網絡攻防演練已經進行了七年,攻防雙方的對抗日益激烈,技戰術水平也得到了極大的提升。 除了“正”面常規技戰術對抗之外,攻擊還采用了各種新穎的變形繞過攻擊
    的頭像 發表于 08-04 20:20 ?870次閱讀
    華為安全大咖談 | 論道<b class='flag-5'>攻防</b>第1期:<b class='flag-5'>攻防</b>演練之三十六計——開篇
    主站蜘蛛池模板: 国偷自产AV一区二区三区健身房| 千禧金瓶梅快播| 天天爽夜夜爽8888视频精品| 国产AV电影区二区三区曰曰骚网| 少妇被阴内射XXXB少妇BB| 国产睡熟迷奷系列网站| 亚洲精品久久久久一区二区三| 金发欧美一区在线观看| 879影视动漫h免费观看| 青青草AV国产精品| 国产精品手机在线视频| 孕妇bbwbbwbbwbbw超清| 欧美另类老女人| 国产亚洲精品久久久999密臂| 中文字幕日本在线mv视频精品| 日本漫画母亲口工子全彩| 果冻传媒2021一二三在线观看| 97在线免费观看| 校园女教师之禁区| 美女洗澡脱得一二干净| 国产成+人欧美+综合在线观看| 伊人久久精品99热超碰| 日本一二三区视频在线| 娇小XXXXX第一次出血| www在线小视频免费| 亚洲欧美日韩国产另类电影| 欧美高清另类video| 国产在线精品亚洲第一区| 99视频免费播放| 亚洲无遮挡| 十九岁韩国电影在线观看| 老色哥网站| 国产在线观看99| 冰山高冷受被c到哭np双性| 一区二区三区国产亚洲网站| 色欲av蜜臀av高清| 免费人成在线观看网站视频| 国模啪啪久久久久久久| 超碰caoporn| 98久久人妻少妇激情啪啪| 亚洲精品国产A久久久久久|