一、概念具体的描述大家可以在网上找,在这里我就不再罗嗦了,大致意思为:通过调用程序自身的一些函数达到某种目的。二、背景虽然前面的HOOK已经可以实现一些特殊功能,但是对于一个线上的软件,只在本地做了修改是没有用的,因为服务器的数据并没有改掉,因此出现了CALL。三、实现仍以前面的Game为例进行CALL的说明,如下“弄死我自己”。1、CALL代码构建 根据已有的逆向分析结果,该游戏中角色类中有一个
SMC简介SMC,即Self Modifying Code,动态代码加密技术,指通过修改代码或数据,阻止别人直接静态分析,然后在动态运行程序时对代码进行解密,达到程序正常运行的效果。SMC的实现方式有很多种,可以通过修改PE文件的Section Header、使用API Hook实现代码加密和解密、使用VMProtect等第三方加密工具等。CTF中的SMCSMC一般有俩种破解方法,第一种是找到对代
转载 2024-08-27 09:15:04
50阅读
一、前言在之前介绍了很多破解相关的文章,在这个过程中我们难免会遇到一些反调试策略,当时只是简单的介绍了如何去解决反调试,其实在去年我已经介绍了一篇关于Android中的安全逆向防护之战的文章:Android安全逆向防护解析;那么这篇文章就来详细总结一下,现阶段比较流行的几种反调试解决方案。二、反调试策略方案第一种:先占坑,自己附加代码非常简单,在so中加上这行代码即可:ptrace(PTRACE_
题目是新手笔记,大佬别看了.最重要的第一点,一定要懂正向,了解数据结构,脑中构思功能间的调用关系.比如打怪功能.,点击怪物之后触发的功能调用可能如下鼠标点击CALL { ..判断点的什么东西call { ....选中怪物call { ......走路call { ..........攻击call { 技能CALL { ... ... } } } } } } 这是调用关系的构思,同时还要捋
# Java 逆向调试教程 逆向调试是Java开发中一个强大的调试工具,它能够帮助开发者深入理解代码逻辑、发现隐藏的bug,特别是在处理复杂系统或遗留代码时。本文将带你逐步实现Java逆向调试,并且使用合适的工具和技术进行这个过程。 ## 流程步骤 以下是实现Java逆向调试的步骤: | 步骤 | 描述 | |-
原创 2024-08-14 07:55:17
25阅读
                    继上一篇 查找锁定微信功能后,咱们来讲讲X64易语言调用锁定CALL。       阿冲老师比较喜欢总结,就阿冲老师目前知道的逆向学习圈子大概有以下3个,易语言圈子、C#
这是「进击的Coder」的第 372 篇技术分享“ 阅读本文大概需要 17 分钟。 ” 一、为什么要写这篇文章使用 IDA 远程调试 Android SO 时,有一些场景需要在 init_array、JNI_OnLoad 等函数入口处下断点,对应的调试手法是以调试模式启动应用,处理完毕之后通过 jdb 命令通知应用继续运行,这种方法的优势是能够在程序开始运行之前获取程序的控制
  做脱机协议,首先要找到关键的加密代码,然而这些代码一般都在so里面,因为逆向c/c++的难度远比java大多了!找到关键代码后,一般情况下是逐行分析,然后自己写代码复现整个加密过程。但是,有些非标准的加密算法是由一个团队实现的,整个过程非常复杂。逆向人员再去逐行分析和复现,有点“不划算”!怎么才能直接调用so里面的这些关键代码了?可以通过前面的介绍的frida hook,也可以通过今天介绍的这
转载 2023-09-08 10:38:25
444阅读
一次运行程序,同时获取一下内容:1. 获取商店详情;2. 获取当前商品评论;3. 获取商品的问题、答案;效果如下图:下面会进行以下几步进行分析(下方演示过程全部使用chrome浏览器);1.抓包找到对应接口商店详情https://item-soa.jd.com/getWareBusiness?skuId= 商品评价https://club.jd.com/comment/skuProductPage
转载 2023-10-08 13:00:38
101阅读
一、前言这是系列的第十篇,通过该样本可以充分学习如何在Unidbg中补充环境。朋友zh3nu11和我共同完成了这篇内容,感谢。二、准备 首先我们发现了init函数,它应该就是SO的初始化函数,其余的函数看名字也都很易懂。三、Init 模拟执行我们首先用Unidbg跑通Init初始化函数,先搭建基本框架package com.article10; import com.github.unidbg.
转载 2023-12-22 15:53:18
155阅读
1.浏览器控制台的使用function person(x, y) { return x + y } //function是声明一个函数 //person是这个函数的名字,然后x,y是这个函数的两个参数。这个函数执行会返回x+y的和值。 person(5, 6)在控制台执行。如图:2.浏览器工具的搜索功能搜索功能是指搜索JS代码的功能。搜索功能是在浏览器打开F12(ctrl+shift+i)
一、前言这是系列的第十篇,通过该样本可以充分学习如何在Unidbg中补充环境。朋友zh3nu11和我共同完成了这篇内容,感谢。二、准备 首先我们发现了init函数,它应该就是SO的初始化函数,其余的函数看名字也都很易懂。三、Init 模拟执行我们首先用Unidbg跑通Init初始化函数,先搭建基本框架package com.article10; import com.github.unidbg.
转载 2023-12-14 12:18:51
127阅读
上一篇   《 教我兄弟学Android逆向08 IDA爆破签名验证 》我带你熟悉了IDA工具的使用,并且用IDA爆破了so层的签名校验 我给你布置的课后作业你也用上节课的方法做出来了 看你上节课学习的不错那么这节课给你带来IDA动态调试so的教程。 你看着我激动地说 大哥,本节课我已经期待很久了,终于来了!!我要认真听课! 下面开始今天的
目录一、准备的工具:二、总览步骤二、静态逆向获得app信息1. 将Apk安装的手机2. 对apk进行静态分析,获得apk的包名,入口Activity,以及so文件。三、搭建动态调试环境1. 将android_server文件放到Android手机中。        step1: 确保可以连接到手机,并在手机中新建目录mydata/adb。  &nb
大家好,我是老袁,一名逆向分析人员,我们都知道无论是做什么工作,前期都需要有准备工作,那么我们在开始Android逆向的知识点介绍之前,先帮大家把环境搭建好,下面跟我一起来吧!!!一、开发环境1.安装JDKJDK是java环境,无论是开发还是后面的工具都需要用到它。下载它安装即可,然后是配置环境变量;配置环境变量的目的是后面我们运行java工具时需要它,至于开发的话,在IDE中可以选择jdk的目录
一、在网页输入要提交的信息二、打开开发者工具,查看网络选项卡,点击提交三、数据是被加密的,搜索关键字“p
现在我们已经玩了好几天的静态看代码了,好没意思,今天我们来动态调试一个smali试试。今天调试的软件:apk链接:https://pan.baidu.com/s/1smNIrST 密码:uzsa准备工具:1、Android Studio2、Androidkiller3、ideasmaliideasmali下载链接:链接:https://pan.baidu.com/s/1htl26qS 密码:0pr
转载 2024-01-10 12:09:49
76阅读
一、通过Fiddler抓包,找到要替换的JS文件,这里要替换的事md5.js二、新建一个md5.js文件,内容为包里的内容,为了区
网站反爬虫:一个IP频繁访问就先将该IP加入黑名单 反爬虫策略:限制IP访问频率,超过频率就自动断开:降低爬虫的速度,在每个请求前加time.sleep,或更换IP 策略二:后台对访问进行统计,如果单个userAgent访问超过阈值,予以封锁:误伤较大,一般网站不使用 策略三:针对cookies:一般网站不使用 本例利用反爬虫策略来抓取糗事百科的段子 1 #网站反爬虫:一个IP频繁访问就先将该
axios是基于Promise 用于浏览器和 nodejs 的 HTTP 客户端;可以用在webpack + vuejs 的项目中 1、example1.1、get请求axios.get('/user?ID=12345') .then(function (response) { console.log(response); }) .catch(function (error)
转载 3月前
416阅读
  • 1
  • 2
  • 3
  • 4
  • 5