相关代码文件,工具已经全部包含:https://github.com/obaby/porn-app-reverse
某加密到牙齿的APP数据加密分析
在某特上关注了一点乱七八糟的东西,然后就看到了这么一款app。无聊业余时间的时候爬取了一些福利app的数据,于是就想顺便看下这个东西的数据是否也可以爬取。\
目前一共爬取了10w+数据,我准备等哪天出个福利网站数据分析报告。
图片解析
习惯性的打开HttpCanary抓包,目前一切正常。
数据都能获取到,既然要爬数据,肯定是要能够看到图片,这个是最起码的。 图片链接如下: https://ssimg.bdxxo.cn/tv_adult/avid5c33013611e90.jpg?k=0bf5566b1e365d4f0cf78f566269e769&t=1593571053
看到后面的k和t,忽然觉得这个东西可能没这么简单,应该是服务器进行访问校验了,先不管这个,直接访问下看看。
Frida Hook 初体验
好久没有去做安卓的东西了,技术日新月异,貌似自己有点脱节了。其实之前也尝试过安装frida,好几次都比较蛋疼的卡在了安装的地方。同样,这一次又开在了安装的地方,仔细看了下没有找到wheel,取消之后可以先装wheel,然后再次安装,如果使用国外的源太慢,可以尝试切换到国内的源,个人比较倾向于清华大学的python源,地址自己去我的友链表复制。
CentOS 6 更新php 从7.0到7.2
#
yum install epel-release
# install Remi repo
rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-6.rpm
# centos 7 rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
# check installed version
yum list installed php*
# remove old version
yum remove php*
# install new version
yum install --enablerepo=remi-php72 php php-mcrypt php-cli php-gd php-curl php-mysql php-ldap php-zip php-fileinfo
# check php version
php -v
can’t open file ‘< unprintable file name>’: [Errno 2] No such file or directory
尝试从cmd或者bat中执行带有中文路径的命令时就可能会得到标题中的错误:can’t open file ‘<unprintable file name>’: [Errno 2] No such file or directory。例如下面的代码:
cd /d H:\PyCharmProjects\spider
call H:\PyCharmProjects\spider\venv\Scripts\activate
python "超碰视频\chaop.py"
出这个错误的关键是unprintable file name,而不是文件不存在,当命令执行完成之后,如果直接在终端中再次运行最后一条命令其实是可以执行的。所以要解决这个问题一个办法是不要使用非英文目录或者文件名。除此之外还有另外一个办法,修改cmd的编码,默认的cmd编码是936,通过chcp命令可以查看修改编码:
如果要想bat中的命令能够成功执行,在文件开头加上 chcp 65001即可,修改后如下:
chcp 65001
cd /d H:\PyCharmProjects\spider
call H:\PyCharmProjects\spider\venv\Scripts\activate
python "超碰视频\chaop.py"
iOS 签名杂谈(二)
上一篇中提到替换SC-info后的ipa依旧可以安装,至于原因其实也很简单。仔细查看CodeResources文件,就知道原因了。文件内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>files</key>
<dict>
<key>EmojiUltimateViewController.nib</key>
<data>
ifQreSMmB3Uft3K3EF1/RLPF/zw=
</data>
<key>EmojiViewController.nib</key>
<data>
UUTdU18Tz6Fl6x7E2aGYcRxpH3A=
</data>
<key>English.lproj/Localizable.strings</key>
<data>
53Ka23KM2gkM/XGA2/7hVBG5jfc=
</data>
<key>MainWindow.nib</key>
<data>
UshXxpapPiP6lBtWe18OpnMv+lM=
</data>
<key>PkgInfo</key>
<data>
n57qDP4tZfLD1rCS43W0B4LQjzE=
</data>
<key>RemoteConfig.plist</key>
<data>
rQXI2OqpnGVOk5+BmA/F++FnAG0=
</data>
<key>de.lproj/Localizable.strings</key>
<data>
MAGm4wWT2b8996eIiqcJna3Jj5s=
</data>
<key>emoji.plist</key>
<data>
aybwK3Wkthu1Gk7XmEzyjXmGVRQ=
</data>
<key>emoji_ultimate_copy_button.png</key>
iOS 签名杂谈(一)
为什么要说iOS的签名呢?现在移动平台的逆向的教程和书籍已经相当多了。针对签名的文章也很多,我这里想说的一些是可能别的地方看不到的比较细微的内容(虽然都是老黄历~~)。
iOS的签名目的其实也比较纯粹,就是为了能够在不越狱的情况下安装破解版的ipa。当然,如果是各种助手的话还有另外的一个目的,那就是应用分发(更重要的是在分发之前加入自己的广告sdk)。
说到iOS的应用分发其实主要方式有如下几种:
- 苹果的应用商店。
- cydia应用商店。 需要越狱之后才能安装各种app和插件,并且由于现在越狱基本都是不完整越狱,重启设备之后需要重新越狱。并且越狱工具安装也异常麻烦,所以越狱的用户也少了很多
- 第三方应用商店,国内的比较大的就那么几家。不知道的可以自己搜索一下。 第三方应用商店的app分发其实也经历了几个时期:
- a. 越狱时期,最早期应用商店分发的基本都是越狱应用。这个与早期的越狱插件和完美越狱存在比较大的关系。
- b. 转授权分发,这个技术最早貌似是360的快用用的这么一项技术(多年以前, 13年左右)。所谓转授权就是通过链接电脑,通过itunes的相关api调用在设备上创建IC-info文件。通过苹果的应用商店下载的iap会包含sc_info 授权信息。
在ipa安装的过程中并不会校验设备上有没有授权信息,只有到运行的时候才会校验授权信息。此时如果没有授权 那么会弹出要求输入用户名和密码的弹框。