当前位置: 首页 > news >正文

8.什么是HOOK

程序编译的本质是,首先计算机它只能看得懂机器码也就是只能看得懂数字,机器码学起来很费劲然后就创造了编译器这个东西,编译器它懂机器语言所以它可以跟机器沟通,而我们人可以跟编译器沟通,人跟编译器的语言就是各种各样的编程语言(c/c++、java),然后程序编译的本质就是把人可以看懂的编程语言源代码翻译成计算机可以看懂的计算机语言(二进制数字),编译之后会在磁盘上生成一个文件,这个文件中保存了要让计算机做的每一件事的细节。

在双击exe文件时操作系统会把它加载到内存然后会给它一部分处理器的控制器,然后处理器就顺着exe中记录的细节一条一条的执行(执行流程),而HOOk是在想改变一个程序的执行流程,比如打开一个程序非要激活码没有激活码不让玩,我们想绕过激活码这就是改变程序的执行流程,绕过激活码有两种方式一种是直接修改硬盘上的exe程序这种叫补丁技术/破解技术,另一种是在内存中修改这种叫HOOK技术/内存补丁技术。

相关文章:

  • sql查询,直接返回json数组格式
  • 伪css的处理方式
  • [力扣题解] 200. 岛屿数量
  • Java——认识Java
  • 【Vue2入门技能树】:Vue2项目从入门到放弃所遇到的问题汇总
  • 【Docker学习】深入研究命令docker exec
  • SVM兵王问题
  • 摄像头应用测试
  • 牛逼!50.3K Star!一个自动将屏幕截图转换为代码的开源工具
  • 【fastapi+mongodb】使用motor操作mongodb
  • 给页面元素添加水印
  • Tomcat调优参数
  • Linux系统如何通过编译方式安装python3.11.3
  • Java——接口
  • Vue 2与Vue 3的区别
  • 实现windows 窗体的自己画,网上摘抄的,学习了
  • 《Javascript高级程序设计 (第三版)》第五章 引用类型
  • Android系统模拟器绘制实现概述
  • Android优雅地处理按钮重复点击
  • IE报vuex requires a Promise polyfill in this browser问题解决
  • Javascript 原型链
  • Javascript设计模式学习之Observer(观察者)模式
  • Java应用性能调优
  • MyEclipse 8.0 GA 搭建 Struts2 + Spring2 + Hibernate3 (测试)
  • Python 反序列化安全问题(二)
  • Python学习笔记 字符串拼接
  • SpringCloud集成分布式事务LCN (一)
  • storm drpc实例
  • 从重复到重用
  • 大整数乘法-表格法
  • 你不可错过的前端面试题(一)
  • 山寨一个 Promise
  • 实习面试笔记
  • 使用API自动生成工具优化前端工作流
  • 原生 js 实现移动端 Touch 滑动反弹
  • 正则表达式
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • 移动端高清、多屏适配方案
  • ​DB-Engines 12月数据库排名: PostgreSQL有望获得「2020年度数据库」荣誉?
  • # 数仓建模:如何构建主题宽表模型?
  • #WEB前端(HTML属性)
  • (2015)JS ES6 必知的十个 特性
  • (C++)八皇后问题
  • (C++)栈的链式存储结构(出栈、入栈、判空、遍历、销毁)(数据结构与算法)
  • (ISPRS,2021)具有遥感知识图谱的鲁棒深度对齐网络用于零样本和广义零样本遥感图像场景分类
  • (第61天)多租户架构(CDB/PDB)
  • (附源码)ssm高校运动会管理系统 毕业设计 020419
  • (轉貼) UML中文FAQ (OO) (UML)
  • **PHP分步表单提交思路(分页表单提交)
  • *Django中的Ajax 纯js的书写样式1
  • .NET Framework、.NET Core 、 .NET 5、.NET 6和.NET 7 和.NET8 简介及区别
  • .net php 通信,flash与asp/php/asp.net通信的方法
  • .net 生成二级域名
  • .NET/C# 获取一个正在运行的进程的命令行参数
  • .NET面试题解析(11)-SQL语言基础及数据库基本原理