Fanxs's Blog

Fanxs's Blog

talk is cheap

JNI调用和动态注册探索
前言:之前在测试一个APP时,需要自己去写一个APP调用so库来进行通信的加解密。由于so文件使用了动态注册,所以没能找到对应的Native加解密方法来进行分析。所以这一篇就自己探索一下JNI接口了调用so库的方法,以及如何发现和定位动态注册的JNI接口。 0x00. JNI接口在Java中声明并调用了Native方法时,在运行时必须要让JVM找到对应的函数。Java层会通过JNI(Java Native Interface)来访问到Native层:1Java <---> JNI <---> Native Java代码调用Native函数,需要在类中加载so文...
记一次APP加密通信后的分析过程
前言:最近有一次驻场测试,需要对甲方开发的支付SDK进行测试。到了甲方公司,对方负责人只给了我们一个SDK demo APP和接口文档,其他啥都没有给。让人崩溃的是,Demo里出来的通信过程是加密的,所有接口也是进行加密通信,而负责人并没有给我们报文的加密过程。这篇文章就记录了这一次测试的坎坷分析经历,以供自己以后再做参考。 0x00.Demo报文甲方爸爸给我们的接口文档,包含了十几个不同的接口。接口共用几个URL,由请求包中的TransId来注明不同的接口服务。而文档里只给了参数的定义,没有发包的加密过程:Demo APP打开后,有一个输入框和“支付”按钮:输入框里的内容为接口明文...
【整理笔记】Android APP基础安全测试
前言:在公司时,会接到很多APP的测试项目,其中就包括移动端安全的基本测试。由于本人对移动端安全没有很多的研究,在单独做这些项目时会遇到很多的困难,所以专门总结了这篇文章,以供自己测试需要。大佬请提出建议或有效避让。 客户端安全签名安全检测目的检测客户端安装包是否正确签名。通过签名,可以检测出安装包在签名后是否被修改过。 方法1.查看META-INF目录下的文件,若存在.SF和.RSA文件,则说明APP已经过了签名。2.利用GetApkInfo.jar,查看是否使用v2.0签名机制。 检测详情使用GetAPKInfo: 修复建议使用v1.0 + v2.0对APP进行签名。 相关背景开...
【整理笔记】格式化字符串漏洞梳理
前言:格式化字符串漏洞是比较古老的漏洞了,已经被研究了好多年,在目前广泛的ASLR和vsprintf/vprintf等新函数的保护下,这个漏洞也已经不常见。写这个只是因为,在之前读书时,专门读了这个漏洞的文章,想想当时学的那么认真,没有做啥整理就忘光了有点可惜,所以就重新复习了一下做一下学习整理。 0. 简介格式化字符串漏洞是广泛存在于基于C/C++的可执行文件中的漏洞,于2000年被纰漏。这个漏洞是典型的二进制常见漏洞之一,它的危害甚至超过了缓冲区溢出。 1. 原理格式化函数是一种特殊的ANSI C函数,它们从格式化字符串中提取参数,并对这些参数进行处理。而格式化字符串将C语言的主...
【Reverse】某CTF在线培训平台Reverse题
这几天客户要参加一个CTF竞赛,据说是在一个CTF在线培训平台上抽题来做赛题,就让我们把题做了之后给他们培训CTF。这个平台里只有一道reverse的题,名字还是取了最近特别火的电影“我不是药神”之名(这电影巨好看,业界良心),这几天虽然忙着测一个智能设备,但还是抽出时间想来试试这道reverse题。 0x00. 初探这道题为一个EXE文件,打开后需要输入名字和key来通关,如果输错了,则会“爆炸”。迫不及待打开了exe,瞎填了名字和key,想看看报错的语句是什么(方便后来ida里寻找)。 刚输完名字,程序就关掉了……看来是只有输入了固定的名字,才能走到输入key那一步。好吧,那就直接I...
avatar
Fanxs
Keep Corrupted and Core Dumped