ASO
文章平均质量分 87
1、下载流程:清理进程和数据(包括keychain及修改设备信息)、`切换IP`、登录appID、打开App Store、在App Stor
2、 评论流程:在下载流程的基础上进行评论
3、Theos环境搭建、动态库的开发:
[0.] iphone/tool
[1.] iphone/tweak
iOS逆向
华为云云享专家认证|阿里云开发社区博客专家,定期分享Java、iOS资讯(包括基础知识储备)、小程序开发与运营、阅读与写作。只为你呈现有价值的信息,专注于移动端技术研究领域。
展开
-
iOS AppStore Search optimize【 ASO项目使用的技术】目录(持续更新)
文章目录引言I、hook CFUserNotificationCreat 截取Header 部分信息、Message内容 进行任务处理1.1 监听CFUserNotificationCreate 进行处理连接状态1.2 下载app的时候,验证码的打码流程处理1.2.1 SBUserNotificationAlert1.2.2 CFUserNotificationCreatII 、电池状态监控III、 切换和控制Wi-FiIV、 数据清理引言原文:https://kunnan.blog.csdn.n原创 2021-03-11 10:36:32 · 63581 阅读 · 4 评论 -
【ASO项目使用的技术】(例如:1、hook CFUserNotificationCreat 截取Header 部分信息、Message内容 进行任务处理2、设备信息的修改、清理数据3、js逆向)
- 下载流程:清理进程和数据(包括keychain及修改设备信息)、切换IP、登录appID、打开App Store、在App Store搜索应用、下载并安装app(打码)、注销app ID、关闭App Store、卸载app原创 2020-09-04 11:15:45 · 13246 阅读 · 0 评论 -
iOS小技能:从App Store官方接口查询 app信息(应用内调转到app store进行评论/下载)
前言应用内调转到app store进行评论检查版本showRateAlertRate it now#define kAppStoreAddress @"itms-apps://itunes.apple.com/app/id162?action=write-review" [[UIApplication sharedApplication] openU...原创 2019-12-30 14:39:17 · 15203 阅读 · 0 评论 -
ASO小技能:自动输入搜索框文本
文章目录引言I 自动输入搜索框文本的核心实现1.1 切换到搜索tabbar1.2 获取搜索界面的控制器1.3 自动输入搜索框文本引言应用场景:自动输入关键词,比如app的名称进行应用搜索实现方式:本文是分析app代码, hook对应代码实现, 完全没有用模拟点击进行实现。模拟点击的好处是降低难度了,但是需要适配各种屏幕,除非你用固定机型。这两种方式各有各的好,模拟点击比较通用,客户可以手动干预。分析代码也可以做到比较精准。比如想开发一个根据坐标来判断当前点击的是文本框的通用函数原创 2022-03-09 15:04:05 · 2546 阅读 · 0 评论 -
ASO小技能:使用JsHook来替代模拟触碰
文章目录引言I 核心参考代码1.1 获取任务注入AppStore1.2 hook `evaluateScript:withSourceURL`1.3 通过js执行任务引言当还有人还在问我关于PTFTouch的开源触碰相关问题的时候,我通常会让他换个思路解决问题,即使用JsHook来替代模拟触碰。I 核心参考代码1.1 获取任务注入AppStoreNSDictionary* Task = nil; NSString* identifier = [[NSBundle mainBundl原创 2022-03-08 15:43:19 · 3538 阅读 · 1 评论 -
iOS AppStore Search optimize【 ASO项目使用的技术】之 Inter process Communication By Rrocketbootstrap
文章目录引言I 、基于Rrocketbootstrap的封装Message工具类进行进程间的消息通信II 、去掉对rocketbootstrap的Depends依赖see also引言应用场景:进程的通信发现vpn状态异常, 尝试关闭pppd修正#define DPost(cmd,...) [Message postMsg:@[cmd,##__VA_ARGS__] toCenter:DaemonServerKey error:nil] DPost(@"kill"原创 2021-03-12 14:34:22 · 1801 阅读 · 0 评论 -
ASO小知识:tweak去掉对rocketbootstrap的Depends依赖
文章目录引言I、去掉对rocketbootstrap的Depends依赖1.1 研究 rocketbootstrap的deb包的脚本 postinst、prerm1.2 方案1.3 完整的demoII、问题汇总2.1 dpkg -r com.rpetrich.rocketbootstrap 失败III、rocketbootstrap 安装过程分析3.1 一个简单的方式研究你刚刚安装一个tweak或者deb 包之后,系统最近访问的文件see laso引言本文的目的,是想在自己的deb 自带rocketb原创 2021-03-12 14:09:07 · 1698 阅读 · 0 评论 -
iOS逆向:【代码混淆】1、基于编译器混淆静态库(StaticLib)2、字符串加密:使用clang-c接口将源代码转换成抽象语法树,并对抽象语法树进行遍历和分析,分析代码中的字符串,并进行加密处理。
iOS逆向:【代码混淆】1、基于编译器混淆静态库(StaticLib)2、字符串加密:使用clang-c接口将源代码转换成抽象语法树,并对抽象语法树进行遍历和分析,分析代码中的字符串,并进行加密处理。原创 2019-01-02 10:14:17 · 11836 阅读 · 0 评论 -
iOS小技能:Mac密码重置、关闭Mac系统的SIP(System Integrity Protection 系统完整性保护)
Getting around RootlessIf you currently have Rootless enabled, you’ll be unable to attach to the majority of Apple’s programs. For example, try attaching LLDB to the Finder application. Open up a原创 2017-10-20 15:18:58 · 11260 阅读 · 0 评论 -
iOS AppStore Search optimize【 ASO项目使用的技术】之系统的核心进程处理
sublime中自建的有格式化按钮:Edit -> Line -> Reindent 只是sublime并没有给他赋予快捷键,所以只需加上快捷键即可Preference -> Key Bindings -user打开用户快捷键绑定设置添加(比如添加:ctrl + alt + l) { "keys": ["ctrl+alt+l"], "command": "reindent" }, //原创 2020-09-03 09:37:42 · 11472 阅读 · 0 评论 -
iOS小技能:【发红包】使用tweak和lua脚本结合进行实现
ios-sec-wiki iOS安全的书籍讲解: 1、越狱程序的开发过程:我们开发的大部分越狱程序,都是编译成动态链接库(例如:介绍的越狱程序(Tweak)开发,就是动态链接库。),然后通过越狱平台的MobileSubstrate(iOS7上叫CydiaSubstrate)来加载进入目标程序(Target),通过对目标程序的挂钩(Hook),来实现相应的功能。2、iOS程序类型 Applicat原创 2017-08-08 16:07:48 · 11351 阅读 · 0 评论 -
iOS小技能:逆向的一般思路及入门工具
前言重点:入门时的用的工具、一般思路,技术是不断发展的。1、要求熟悉iOS设备的硬件构成、iOS系统的运行原理、丰富的开发经验。2、作用如果把app必做城堡,那逆向工程就是站在更高的纬度进行巧取而不强夺,通过监视甚至进行hook改变app的运行逻辑,从而达到目的。 总之: 1)分析目标程序,获取信息–安全相关,用于评定app的安全级别、获取查杀病毒的方法、构建手机防火墙(逆向系统电话、短信功能).....................原创 2017-08-10 11:40:32 · 11289 阅读 · 0 评论 -
iOS越狱过程:越狱工具做了什么事情?( iOS系统结构、常见的二进制文件类型)
前言iOS系统结构一、iOS系统结构访问iOS全系统文件是逆向工程的首要前提。 iOS 由OS X演化而来,而OS X则是基于unix操作系统的。 1)通过FHS标准了解类unix的文件目录结构,OS X则是在FHS基础上形成自己的hier(7)框架 FHS: /boot 存放能使系统成功启动的所有文件 – iOS在此目录中为空 /dev 存放设备文件:块设备(硬盘)、字符设原创 2017-08-10 14:29:37 · 10910 阅读 · 0 评论 -
iOS逆向小技能:Theos的安装
一、简介参考博客Theos 是越狱开发工具包。logos语法简单。(整合在Xcode的iOSopendev )由于逆向工程很多东西无法自动化,因此推荐Theos二、、安装Thoes1、安装Xcode,以及command line tools 2、下载ThoesdevzkndeMacBook-Pro:opt devzkn$ export THEOS=/opt/theos原创 2017-08-10 15:39:07 · 11893 阅读 · 0 评论 -
iOS小技能: tweak 集成CocoaAsyncSocket(建连、断开、重连、心跳、通用请求)【应用场景:微信机器人】
前言iOS越狱开发中,各种破解补丁的统称为Tweak,通常意义上我们说的越狱开发,都是指开发一个Tweak. 基本上,tweak都依赖于一个名叫cydia Substrate (以前名字也叫mobile Substrate)的动态库,Mobile Substrate是Cydia的作者Jay Freeman (@saurik)的作品,也叫Cydia Substrate,它的主要功能是hook某个App原创 2017-08-10 15:49:39 · 12665 阅读 · 0 评论 -
iOS逆向小知识: 将功能独立的tweak 合并到同一个deb 包(在%ctor 中根据 processName 进行%init group)
文章目录引言I、功能独立的tweak合并到同一个deb 包1.1 合并到同一个deb 包1.2 在%ctor 中根据 processName 进行%init groupII、基础知识储备:logos 语法2.1 %ctor2.2 %group2.3 %init2.4 %property2.5 %subclasssee also引言昨天讲解了如何搭建私有Cydia源来批量部署插件,今天就来聊一聊如何讲将功能独立的tweak 合并到同一个deb 包。I、功能独立的tweak合并到同一个deb 包1.原创 2017-08-21 11:00:02 · 12098 阅读 · 0 评论 -
iOS AppStore Search optimize【 ASO项目使用的技术】之 Inter process Communication
本文重点讲解 RocketBootstrap的两种包装方式:CFMessagePort、CPDistributedMessagingCenter原创 2017-09-14 15:51:46 · 11234 阅读 · 0 评论 -
iOS小技能:重签名、逆向分析方法、多开原理
%hook Springboard// overwrite methods here%end%hook后面跟的是你要hook的类名称,以一个%end结尾。%orig 当在一个method内部的时候,%orig会调用原来的方法(original method)。Building, Packaging, Installing.依次执行下面的命令即可make, make package, make原创 2017-10-10 14:58:20 · 11147 阅读 · 0 评论 -
iOS小技能:lua代码实现解锁和打开特定app的代码、tweak 实现自动解锁以及打开特定app
查看触动精灵lua脚本的PIDiPhone:~ root# ps aux |grep 'Mobile27bc'root 353 0.6 4.1 609432 42144 ?? Ss 2:38PM 0:54.73 /Applications/TouchSprite.app/Mobile27bc -run /private/var/mobile/Media/T原创 2017-10-13 16:43:51 · 13517 阅读 · 0 评论 -
iOS小技能:编译器的工作过程(预处理、语法和语义分析、生成代码和优化、汇编器、链接器)
登录接口的父类%hook aluLoginViewController- (void)viewWillAppear:(_Bool)arg1{ %log(); %orig; NSLog(@" aluLoginViewController viewWillAppear ");}原创 2017-10-14 12:57:34 · 11738 阅读 · 0 评论 -
iOS逆向之【Anti ptrace】去掉ptrace反调试保护进行lldb调试1、断点ptrace,return 2、hook替换disable_gdb函数3、修改 PT_DENY_ATTACH
前言Makefile文件 的配置新增一个自己的文件1)testTweakDemo_FILES设置工程需要引用的文件,如果你还需要加入一些自己写的文件,多个文件之间以空格分隔:testTweakDemo_FILES = Tweak.xm MyClass1.m MyClass2.m是我们要包含的需要被编译的文件,格式就是 工程名FILES = 要编译的文件名如果文件放在新增的目录,则声明格式如下:Ta原创 2017-10-14 13:49:30 · 11761 阅读 · 0 评论 -
iOS逆向: 视图分析工具AFlexLoader
AFlexLoaderA dylib Loader for Flex, You can use it to analyse 3rd-party apps without sourcecode安装遇到的问题dpkg: dependency problems prevent configuration of org.swiftc.aflexloader: org.swiftc.aflexloader原创 2017-10-14 15:06:51 · 11325 阅读 · 0 评论 -
免密码进行SSH连接、Mac远程连接windows系统(拷贝本地文件)
前言Host 别名HostName: 是目标主机的主机名,也就是平时我们使用ssh后面跟的地址名称。Port:指定的端口号。User:指定的登陆用户名。IdentifyFile:指定的私钥地址。config 的配置记得配置HostdevzkndeMacBook-Pro:.ssh devzkn$ more config# Private 192.168.2.125Host iphone原创 2017-10-14 15:54:41 · 23803 阅读 · 1 评论 -
Lua小技能: 数据类型、对用户点击进行模拟
前言本文,接受init、touchDown、touchUp、mSleep函数参考init 对脚本进行初始化init(bid,rotate) 参数解释:bid(选填)为Bundle ID(ios) 包名(安卓),不知道时为"0";rotate(必填)为0-竖屏,1-home键在右边,2-home键在左边eg:init("0 ",0)mSleep 脚本睡眠函数mSleep(t),t单位为毫秒e原创 2017-10-14 16:05:43 · 11897 阅读 · 0 评论 -
Mac 使用小技能: Bash Shell 利用Alias 简化命令名称(编辑~/.bash_profile)
1、编辑~/.bash_profile生成一个新文件$ cd ~$ touch .bash_profile$ open -e .bash_profile新增:alias cdtaoke='cd ~/code/taoke/taoke'更新内建命令 bash下运行”source ~/.bash_profile“,此条命令是使bash又一次加载配置令刚才命令生效。$ source .bash_p原创 2017-10-15 11:37:44 · 22935 阅读 · 0 评论 -
iOS小技能:Makefile的使用(Makefile的规则、部署脚本、config管理ssh连接)
前言使用别名配置IP MakefileTHEOS_DEVICE_IP=iphone #5C9 #配置IP的host 别名TARGET = iphone:latest:8.0ARCHS = armv7 arm64THEOS=/opt/theosTHEOS_MAKE_PATH=$(THEOS)/makefilesinclude $(THEOS)/makefiles/common.mkTW原创 2017-10-16 14:17:07 · 23265 阅读 · 1 评论 -
iOS逆向:tweak开发教程(iPhone/tool)
前言编写iphone/tooldevzkndeMacBook-Pro:taokeTool devzkn$ export THEOS=/opt/theosdevzkndeMacBook-Pro:taokeTool devzkn$ $THEOS/bin/nic.plNIC 2.0 - New Instance Creator------------------------------ [1.原创 2017-10-16 15:00:09 · 23034 阅读 · 0 评论 -
Lua小技能:http工具方法、使用Lua的协同程序实现生产者-消费者
init("0", 0);require "TSLib"while (true) do if deviceIsLock() == 1 then --判断设备是否锁定 unlockDevice()--解锁无密码的设备 endend原创 2017-10-16 17:30:26 · 12049 阅读 · 0 评论 -
iOS逆向分析工具:使用 deviceconsole进行日志查看
devzkndeMacBook-Pro:guangyouqian devzkn$ git merge --no-ff developdevzkndeMacBook-Pro:guangyouqian devzkn$ git statusgit tag -a v0.1.0 mastergit push --tags原创 2017-10-16 21:49:47 · 22763 阅读 · 0 评论 -
iOS逆向:查看日志利器socat
前言使用 APT 0.6 Transitional 安装socat 几乎所有流行的黑客工具都可以在 BigBoss Recommendation tools这个包中找到 ( APT 0.6 Transitional, Git, GNU Debugger, less, make, unzip, wget 和 SQLite 3.x)安装apt-get install socat原创 2017-10-10 16:37:23 · 11611 阅读 · 0 评论 -
iOS小技能:给debugserver添加task_for_pid权限,以便调试从AppStore中获取的App。
前言在做iOS开发时,在Mac上输入LLDB的命令就可以控制iOS端的App,是因为在我们iOS客户端中有一个debugserver服务器。debugserver专门用来连接Mac端的LLDB客户端,接收LLDB所提供的命令,并且进行相应的执行。 如果你的iOS设备进行过真机调试的话,设备中就会被安装上debugserver, 不过该debugserver只能用来调试你自己的相关应用。 如果想要原创 2017-10-17 16:58:39 · 12278 阅读 · 0 评论 -
iOS小技能:借助LLDB调试第三方App
前言我开发logos tweak 项目的时候,通常 利用iosre的hopper、theos、MonkeyDev、运行时常用的API 进行开发。结合Cycript、hopper、KNHook、以及AFLEXLoader进行分析快速找到入口。项目例子: tweak集成CocoaAsyncSocketKNHook[program named debugserver (found in Xcode.原创 2017-10-17 17:35:13 · 26881 阅读 · 3 评论 -
iOS逆向【Hopper 和 LLDB配合使用】(查看模块偏移后的基地址、添加断点、操作寄存器的值)及LLDB的常用命令
前言Hopper 是一种适用于 OS X 和 Linux 的逆向工程工具,可以用于反汇编、反编译和调试 32位/64位英特尔处理器的 Mac、Linux、Windows 和 iOS 可执行程序!LLDB是Low Level Debugger的简称,在iOS开发的调试中LLDB是经常使用的,LLDB是Xcode内置的动态调试工具。使用LLDB可以动态的调试你的应用程序,如果你不做其他的额外处理,因为d原创 2017-10-17 19:00:45 · 24144 阅读 · 0 评论 -
iOS小技能:1、yalu102 激活了之后,无法连接ssh的解决方案 2、Reveal的基本使用3、Passionfruit 的实现原理
前言使用Hopper自己去破解官方的Reveal,网上有使用Hopper来修改Reveal汇编,破解Reveal 已经不适用最新版本一、在越狱设备上配置Reveal1. Reveal Loader安装首先我们打款越狱设备的Cydia,然后在搜索中输入Reveal Loader,并且进行安装即可,下方是安装后的效果。这一步比较简单,安装后重启SpringBoard即可。iPhone:~ root# c.........原创 2020-09-03 11:41:05 · 23511 阅读 · 0 评论