JS逆向:Hook 技术在 JS 逆向中的相关应用 1. Hook 技术原理

1. Hook 技术原理

客户端拥有 JS 的最高解释权,可以决定在任何时候注入 JS,而服务器无法阻止或干预。

服务端只能通过检测和混淆的手段,领 Hook 难度加大,但是无法直接阻止。

Hook 的目:

  • 一是寻找函数入口;
  • 二是分析参数的变化,便于分析 JS 逻辑。
old_func = 被 hook 函数
被 hook 函数 = function(arguments){
  my_task;
  return old_func.apply(arguments)
}
func.prototype.xxx = xxxx
odl_attr = obj.attr
Object.defineProperty(obj, 'attr', {
  get: function(){
    debugger;
    console.log(cookie_cache);
    return old_attr
  },
  set: function(val){
    debugger;
    return ...
  }
})
  • 实例:查找 cookie 生成入口
document.cookie_bak = document.cookie
Object.defineProperty(document, 'doockie',{
  get: function(){
    debugger;
    return document.cookie_bak;
  },
  set: function(){
    debugger;
    return;
  }
})
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章