doorxp Blog

使用 LLVM Pass 实现字符串加密

这个项目可以作为我看了这么久 LLVM 的 Docs 的一个小总结吧。这个项目主要就是给函数使用的常量字符串进行加密,在程序被静态分析的时候干扰分析。当然找到思路后,这个混淆还是很容易解开的。代码已上传到 Github chenx6/baby_string_obfuscation吐槽下,网上的文章质量参差不齐,写的让人不知所云的,真的恐怖。所以还是面向 Stackoverflow 和官方文档编程吧...为了写 LLVM Pass ,首先得看看 LLVM Programmers
作者:doorxp 分类:Apple 浏览:21 评论:0

Detecting task modifications

In the previous post we looked at different ways to inject code into tasks on macOS. The goal being to create increased awareness of the type of methods attackers writing malicious code on macOS might use. In this post I wanted to focus in
作者:doorxp 分类:Crack 浏览:30 评论:0

jar 修改 .class 重新打包

假设 这个文件为要修改的文件 Bvcn.javajavac --release 9 Bvcn.java -d .jar -uvf 路径到.jar 包名到 Bvcn.class
作者:doorxp 分类:Crack 浏览:77 评论:0

catalina 命令行安装 ipa

# 使用 brew 安装 ideviceinstallerbrew install ideviceinstaller       简单使用教程idevice_id -l # 查看链接的设备 idideviceinstaller -l# 获取设备上所有app的bundle  idideviceinstaller -i demo.ipa #&nbs
作者:doorxp 分类:Apple 浏览:238 评论:0

App Transport Security

iOS 9 和 OS X Captian 带来了一个新的安全特性,也就是 App Transport Security,加强了应用中所谓网络连接的安全性。下面是 ATS 默认的安全要求:The server must support at least Transport Layer Security (TLS) protocol version 1.2.Connection ciphers are limited to those that provide forward secrec
作者:doorxp 分类:Apple 浏览:244 评论:0

private api

 Class LSApplicationWorkspace = objc_getClass("LSApplicationWorkspace");        id workspace = [LSApplicationWorkspace  performSelector:NSSelectorFromString(@"defaultWorkspace")];    NS
作者:doorxp 分类:ObjC 浏览:214 评论:0

获得当前 App 的所有类, 当前 App 可见类.

#import <objc/runtime.h> #import <dlfcn.h> #import <mach-o/ldsyms.h> unsigned int count;     const char **classess;     Dl_info info;   
作者:doorxp 分类:ObjC 浏览:231 评论:0

WKWebView DEBUG

#ifdef DEBUG  SEL sel = NSSelectorFromString(@"_enableRemoteInspector");  id cls = NSClassFromString(@"WebView");  IMP imp = [cls sel];  void (*func)(id, SEL) = (void *)imp;  func(cls, sel);#endifadd to&nb
作者:doorxp 分类:ObjC 浏览:337 评论:0

关于反调试&反反调试那些事

前言在逆向和保护的过程中,总会涉及到反调试和反反调试的问题,这篇文章主要是总结一下几种常见的反调试手段以及反反调试的方法。反调试ptrace为了方便应用软件的开发和调试,从Unix的早期版本开始就提供了一种对运行中的进程进行跟踪和控制的手段,那就是系统调用ptrace()。通过ptrace可以对另一个进程实现调试跟踪,同时ptrace还提供了一个非常有用的参数那就是PT_DENY_ATTACH,这个参数用来告诉系统,阻止调试器依附。所以最常用的反调试方案就是通过调用ptrace来实现反调试。#i
作者:doorxp 分类:Crack 浏览:375 评论:0

libdsm-ios.sh 编译iOS

#!/bin/bash # Global build settings export SDKPATH=$(xcrun --show-sdk-path -sdk iphoneos) export SIMSDKPATH=$(xcrun --show-sdk-path -sdk iphonesimulator) export MIN_IOS_VERSION=9.0 ex
作者:doorxp 分类:Apple 浏览:725 评论:0