关于安卓的调试要领(二) | 申博官网
登录
  • 欢迎进入申博官网!
  • 如果您觉得申博官网对你有帮助,那么赶紧使用Ctrl+D 收藏申博官网并分享出去吧
  • 这里是申博官方网!
  • 申博官网是菲律宾sunbet官网品牌平台!
  • 申博开户专业品牌平台!

关于安卓的调试要领(二)

申博_新闻事件 申博 114次浏览 已收录 0个评论

申博网络安全巴士站

申博-网络安全巴士站是一个专注于网络安全、系统安全、互联网安全、信息安全,全新视界的互联网安全新媒体。

————————————-

关于native层的调试-so

起首引见一下甚么是native层。接下来会引见so层的patch,调试及基于so层简朴的反调试和pass技能。

native

一样平常指android的底层的,这个层的代码大部分由c/c++完成,详细的机制为JNI,齐为双向机制经由过程JNI,java代码能够接见c/c++代码,而c/c++代码也能够能够接见java。(明白对照浅陋迎接人人一同交换)

so文件的简朴patch破解

上面的链接包孕简朴调试阶段所须要的文件。这里就是简朴log打印一个字符串。

关于安卓的调试要领(二)

apk反编译及so文件查找

这里的步调人人应当对照熟习,就是apktools d xxx.apk加上-o能够指定输入的文件名,然后查找到文件所在地位。/lib/x86这里看人人的机械机用的甚么架构,我当地虚拟机的架构为x86.

关于安卓的调试要领(二)

关于安卓的调试要领(二)

ida反编译及patch

关于ida的下载和运用这里就不多说了,实在也能够用NASA的谁人对象,由于日常平凡打CTF,ida用的对照熟这里就用它举行一个简朴的破解。找到重要函数,这里称号很明显。。。

关于安卓的调试要领(二)

接下来就是举行patch,将界面切换到hex数据地位

关于安卓的调试要领(二)

找到我们须要变动的字符串然后右键edit或许按f2

关于安卓的调试要领(二)

改成我们须要的字符便可,然后再按f2或许Apply changes

关于安卓的调试要领(二)

然后导出文件便可,然后apktools d ./xxx.apk接着举行一个署名便可。

关于安卓的调试要领(二)

关于安卓的调试要领(二)

胜利后效果

关于安卓的调试要领(二)

总结

这是一个简朴的demo,让人人大概有个patch的相识,接下来进入so层的调试。

so层署名考证及静态绕过与动态绕过

参考链接:

https://www.52pojie.cn/thread-732955-1-1.html

这里重要讲一个简朴的在so层的考证,绕过的要领有patch推断流程及动态变动寄存器。(ps:当你反编译再打包甚么都没改,再按上岸顺序会自动退出。

ida剖析so层

之前的反编译,寻觅步调这里就都跳过了。检察一下全局变量字符串。依据交织援用定位函数所在地位

关于安卓的调试要领(二)

此处为考证逻辑,v5为apk的署名,这里很明显是应用一个if语句举行推断,接下来我们举行一个汇编的检察。

关于安卓的调试要领(二)

Spring Cloud Config Server 路径穿越与任意文件读取漏洞分析 – 【CVE-2019-3799】

漏洞复现 GET /foo/default/master/..%252F..%252F..%252F..%252Fetc%252fpasswd HTTP/1.1
Host: localhost:8888 漏洞分析 Spring Cloud Config是Spirng Cloud下用于分布式配置管理的组件,分为Config-Server和Config-Client两个角色。 C

关于安卓的调试要领(二)

汇编检察,这里应用的是jnz跳转,那末思绪一样我们举行patch让其能够举行一个我想要的转跳,改成jz便可。

关于安卓的调试要领(二)

变动的相干申明,由于打CTF的缘由用keypatch对照多,然则尝试过在arm下用这个插件可能会不胜利,这里x86是胜利的,读者能够像之前上文一样hex下变动ascii。

关于安卓的调试要领(二)

关于安卓的调试要领(二)

运转顺序检察log信息看我们是不是胜利。

关于安卓的调试要领(二)

总结

这个试验我们又胜利啦!祝贺你已经会简朴的反二次打包啦

动态调试改寄存器

接下来说第二种要领,对其举行绕过。应用的顺序照样我们二次打包的顺序然则其实不举行patch。

ida断点

先对文件下一个断点,就断在之前我们patch的地位,由于之前的CTF基本对ida用起来照样很顺手(又安利一波CTF)

关于安卓的调试要领(二)

ida动态调试前预备

起首讲ida安装文件下的server文件放在你的安卓装备目次下,只如果一个有权限的目次便可./data/local/tmp这是我的目次。然后运转

关于安卓的调试要领(二)

举行一个端口转发adb forward tcp:23946 tcp:23946

ida选项设置

option选项挑选地点

关于安卓的调试要领(二)

attach

关于安卓的调试要领(二)

由于历程太多以是能够举行一个search来举行搜刮。

关于安卓的调试要领(二)

关于安卓的调试要领(二)

modify the register

这里举行一个历程的attach后,会运转到我们之前下断点的处所。修正zf寄存器为1便可。

关于安卓的调试要领(二)

关于安卓的调试要领(二)

胜利后的效果

关于安卓的调试要领(二)

总结

又胜利的绕过了署名的搜检啦。回忆下这些署名绕过要领,素质就是挟制了一段顺序流,让他跳转到了我们想去的处所。

总结

下一篇讲会更深切的解说so层的反调试完成和绕过,另有xpose模块的运用。

plaidCTF两道web题目writeup

0x1 前言 第一个web题目: potent Quotables

Web (300 pts)
I set up a little quotes server so that we can all share our favorite quotes with each other. I wrote it in Flask, but I decided that since it’s mostly static cont


申博|网络安全巴士站声明:该文看法仅代表作者自己,与本平台无关。版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明关于安卓的调试要领(二)
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址