C++ 多态的实现原理

C++ 多态的实现原理

h4ck1n 技术笔记 2年前 (2022-04-05) 363 0

虚函数 在类的定义中,前面有virtual关键字的成员函数称为虚函数。 virtual关键字只用在类定义里的函数声明中,函数体定义时不用。 class Base { virtual int Fun() ; // 函数声明的时需virtual关键字 }; int Base::Fun() // 函数体定义时无需virtual关键字 { } 多态 多态性指相同对象收到不同消息或不同对象收到相同消息时产生...

使用 IDA microcode 去除 ollvm 混淆

使用 IDA microcode 去除 ollvm 混淆 55

h4ck1n 技术笔记 1年前 (2022-06-20) 1,207 0

前言 本文原文来自Hex-Rays Microcode API vs. Obfuscating Compiler。在IDA 7.1中IDA发布了反编译中使用的中间语言microcode,IDA 7.2和7.3中又新增了相关的C++和python API,这篇文章就是关于Rolf Rolles如何使用这一新功能来处理ollvm混淆的,代码地址:HexRaysDeob。 翻译过程中为了方便理解加入了一...

macOS 提升应用执行权限的方案

macOS 提升应用执行权限的方案

h4ck1n 技术笔记 2年前 (2022-04-05) 1,050 0

应用中有些shell命令可能需要sudo,也就是需要root权限来完成的,比如: $ sudo spctl --master-disable # 开启软件安装的未知来源 碰到这类情况,直接使用是肯定不行的,那么我们该如何处理? 方案一 AuthorizationExecuteWithPrivileges() 这个函数是Security.framework中的一员,使用非常方便。而且还有一个封装得非...

让 Xcode 支持使用 root 权限调试 iOS 设备上的任何应用或进程

让 Xcode 支持使用 root 权限调试 iOS 设备上的任何应用或进程

h4ck1n 技术笔记 1年前 (2022-06-28) 830 2

在 iOS 设备上调试应用程序,需要使用 debugserver + lldb 的方式,配置方法可以参考文章 一步一步用debugserver + lldb代替gdb进行动态调试,这里不赘述。 使用 debugserver + lldb 调试固然不错,但有一个小问题,那就是操作较为麻烦。虽然已经有一些插件简化了调试步骤,如:SpringBoard tweak 双击图标启动debugserver,但...

在越狱设备调试任意 iOS App 的 WebView

在越狱设备调试任意 iOS App 的 WebView 7

h4ck1n 技术笔记 2年前 (2022-04-05) 996 3

iOS 7 之后的 Safari 提供了远程调试设备上网页的功能。在设备和 mac 端的 Safari 上均开启开发者功能之后,可以用 USB 连接手机,然后在 Develop 菜单中选择对应的页面打开 WebInspector: 但是这个调试功能只对 Xcode 真机调试的 App 和 MobileSafari 开启了。 如果基于某些原因想要调试其他厂商的 App 应该怎么办? 已知的一种方式是...

iRightMenu Pro 使用帮助

iRightMenu Pro 使用帮助 9

h4ck1n 专题栏目 2年前 (2022-04-10) 313 0

应用介绍 iRightMenu Pro 是 macOS 上一款灵活、强大的右键菜单工具,不仅内置了各种常用的工具,还能够让用户自定义右键菜单,使用 Shell 脚本实现菜单功能,充分发挥脚本的长处和灵活性,帮你塑造自己的专属右键。 iRightMenu Pro 运行在苹果的 Sandbox 机制之外,突破了苹果的沙盒限制,虽然无法和 iRightMenu 一样上架 App Store,但是获得了比...

使用 VSCode 调试 IDAPython 脚本

使用 VSCode 调试 IDAPython 脚本 13

h4ck1n 实用技巧 1年前 (2022-07-28) 537 0

概述 IDA 只给我们提供了一个类似于命令行的窗口来实时编写脚本,在编写功能比较复杂的脚本时非常繁琐 本篇文章将配置一个 IDA 脚本的开发环境,使用 VSCode 远程连接 IDA,进行脚本的运行和调试 环境 Windows 10 专业版 Python 3.8.5,安装目录 C:\Python38 IDA Pro 7.6 SP1 VSCode 1.69.2 IDACode 0.3.0 配置 Py...

macOS 开启 VNC 远程桌面和 SSH 服务

macOS 开启 VNC 远程桌面和 SSH 服务 3

h4ck1n 实用技巧 2年前 (2022-04-15) 334 0

如果需要使用 macOS 来做为服务器,那不可缺少的就是远程管理,实际上 macOS 自带 VNC 远程桌面和 SSH 服务,只是默认没有开启,下面我们来开启它们。 开启 VNC macOS 开启 VNC 服务可以实现远程桌面控制,方法是:系统偏好设置 -> 共享,打开屏幕共享,添加相应的账号就可以了,如下图: 客户端那边如果也是 macOS,就在浏览器输入 IP 地址,比如:vnc://1...

iRightMenu Pro 更新历史

iRightMenu Pro 更新历史

h4ck1n 专题栏目 1年前 (2022-08-06) 176 0

Version 1.4.7 (33) Nov 04, 2023 at 17:26 12.2 MB 增加复制路径时允许复制当前所在文件夹路径的功能 修复无法使用ROOT权限执行操作的问题(重要) 修复在仿达的工具栏中使用进入终端等操作无效的问题 其他已知问题和体验优化 Version 1.4.6 (32) Oct 16, 2023 at 09:25 12.2 MB 修复某些情况下无法打开程序主窗口的...

plist 在 xml 和二进制两种格式之间相互转换

plist 在 xml 和二进制两种格式之间相互转换

h4ck1n 实用技巧 2年前 (2022-04-15) 244 0

转换的方法非常简单,就是一行命令的事: plutil -convert format(格式) filename(文件名) -o outputpath 命令中的“格式”部分需要用对应的格式代替,在这里 XML 格式需要替换为xml1,二进制格式需要替换为binary1。 由XML格式转换为二进制格式: plutil -convert binary1 test.plist -o output.bin ...

扫一扫二维码分享