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的路由器或交換機能夠得知與它直接相連的鄰居埠和主機名資訊。也可以得知一些附加資訊如 鄰居的硬體模式號碼及...