JS安全防護演算法與逆向分析 JS Hook

2021-10-06 03:32:53 字數 1088 閱讀 3542

js hook原理非常簡單,現在將乙個最簡單的例子,比如有這樣乙個函式

function test(a,b)
我們可以直接在console裡邊修改這個函式,比如如下這樣:

var _test=test;

test=function(a,b)

有的**會在hook這裡做個檢測,比如讀者可以在console裡邊輸出test+"",你會發現我們修改後的函式已經和以前的不一樣的,因而可以在網頁源**裡做個判斷函式字串是否相等的檢測來防止你hook,如下所示。

setinterval(function()"

?console.log("未修改")

:setinterval(function(),

1000);

我們要想過這種檢測,可以hook一下tostring方法,筆者在這裡直接返回正確的。實際開發中,讀者可以新增不同的if條件定位到需要的函式再來做修改。

function.prototype.tostring=function()"

}

hook setinterval也可以做到

var _setinterval=setinterval;

setinterval=function(a,b)

_setinterval(a,b);

}

object.defineproperty()定義新的屬性或者修改屬性。

對這段**進行hook,我們在定義name之前讓它停下來。然後進行hook,**如下:

object.defineproperty(obj,"name",

})

hook cookies的話,必須在載入之前進行hook。除了使用chrome拓展,我們可以自己查詢。比如查詢pwd的cookie:

object.defineproperty(document,"cookie",

}retrun x;

}})

Js逆向分析

1 知道如何尋找登入介面 2 知道如何確定js的位置 3 知道如何觀察js的執行過程 4 知道js的執行方法1 知道如何尋找登入介面 2 知道如何確定js的位置 3 知道如何觀察js的執行過程 4 知道js的執行方法a 登入的form表單中action對應的url位址 b 通過抓包分析發現,在這個u...

針對CDP協議 分析及安全防護

針對cdp協議 分析及安全防護 xml namespace 熟悉cisco 的朋友都知道 cdp協議是思科公司獨特的發現協議,在思科公司出產的所有路由器和交換機裡面都能執行此協議,一台執行 c d p 的路由器或交換機能夠得知與它直接相連的鄰居埠和主機名資訊。也可以得知一些附加資訊如 鄰居的硬體模式...

針對CDP協議攻擊分析及安全防護

針對cdp協議攻擊分析及安全防護 xml namespace 熟悉cisco的朋友都知道cdp協議是思科公司獨特的發現協議,在思科公司出產的所有路由器和交換機裡面都能執行此協議,一台執行c d p的路由器或交換機能夠得知與它直接相連的鄰居埠和主機名資訊。也可以得知一些附加資訊如 鄰居的硬體模式號碼及...