事情的起因
- 想做个在线支付的网站,用来出售本人盗墓笔记,奈何没有企业资质,无法申请某某宝的商户号。所以想到一个折中的办法。那就是贴上自己的个人某某宝账户。
- 上面的做法可以勉强解决我的需求,但是。我得时刻盯着屏幕去看,这样我的用户体验不是很好
- 那么我就想逆向某某宝的收款记录,然后传给我的收款api(php写的http接口)
然后开始逆向
分析思路
-
静态分析(搜索关键字之类的),没搜到==懒得搜!
-
动态分析 某某宝做了防护,动态调试闪退
-
reveal看看界面(定位到MBHtmlCell)
- 一路追踪,找到界面的数据更新函数
Hook代码
%hook FBDocument
- (void)reloadData:(id)data {
NSLog(@"===========收到转账之后的数据==============\n%@\n", data);
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"你好" message:data delegate:nil cancelButtonTitle:@"hook成功" otherButtonTitles:nil];
[alert show]; //本地弹窗
// 模拟网络请求
AFHTTPSessionManager *manger = [AFHTTPSessionManager manager];
[manger GET:@"https://www.sojson.com/open/api/weather/json.shtml?city=北京" parameters:nil progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
NSLog(@"%@", responseObject);
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
NSLog(@"%@", error);
}];
%orig;
}
%end