自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

无方少年游

趁一切还来得及,做一个优秀的自己

  • 博客(86)
  • 资源 (1)
  • 收藏
  • 关注

原创 【Android 字节码插桩】Gradle插件基础 & Transform API的使用

啪~我给大家开个会(手机扔桌子上)什么叫做 客户无感的数据脱敏!?师爷给翻译翻译什么叫做客户无感的数据脱敏?什么特么的叫做客户无感数据脱敏?举个栗子~客户端Sdk新升级了一个版本,增加针对客户的数据的脱敏,但是客户不需要重新调用新的api,且旧的api执行的性能还是不变的,那么大家可能就会问, 切入点在哪呢?你不调用新的api或者改动旧的api,如何获取用户数据呢?字节码的插桩就是做这个用的, 一句话描述~

2024-02-01 14:01:10 1172

原创 Android 14 新特性代码 UUID.fromString & Matcher.matches 的细节改动(扒源码)

Android 14 已经出来好久好久了…今天其他的暂且不论,单纯的讲一下 OpenJDK 17 更新的两点变更(扒源代码)~对正则表达式的更改UUID 处理首先,正则表达式的更改:现在,为了更严格地遵循 OpenJDK 的语义,不允许无效的组引用。您可能会看到 java.util.regex.Matcher 类抛出 IllegalArgumentException 的新情况,因此请务必测试应用中使用正则表达式的情形。

2024-01-03 18:50:59 713

原创 JavaScript学习之旅——初识

在几年前,博主有意学习前端相关的内容,诸如Vue等相关的框架,所以也就想了解一下关于Html、CSS、JavaScript 等相关内容,但是没有实战的地方,随之放弃。时至今日,鸿蒙系统上线,看到用的语言是基于TypeScript(自认为)伸伸懒腰,时间又不早了(bgm:北京时间23:33)以上就是今天学习梳理的内容,简单的对JS有一个基础的认知和运行时的学习,诸君大可一眼扫过,不必过于纠结,都是一些很基础的东西~再会~

2024-01-02 23:34:55 1054

原创 【胖虎的逆向之路】Android自制Https证书实现双向认证

这里的公钥服务端的公钥,这里的签名是指:用hash散列函数计算公开的明文信息的信息摘要,然后采用 CA 的私钥对信息摘要进行加密,加密完的密文就是签名。Hyper Text Transfer Protocol ,超文本传输协议, 是互联网使用最广泛的一种协议,所有的WWW文件必须遵循的标准,Http协议传输的数据都是未加密的,也就是明文,因此使用Http传输敏感协议是不安全的。SSL 服务器允许客户的浏览器使用标准的公钥加密技术和一些可靠的认证中心(CA)的证书,来确认服务器的合法性~

2024-01-02 22:28:04 1320 2

原创 【胖虎的逆向之路】——GOT/PLT Hook详解&针对自定义so库的Hook实操

随着 Android 开发的技术宽度不断向 native 层扩展,Native hook 已经被用于越来越多的业务场景中,之前作者一直游离于Java层面的逆向,后来工作使然,接触到了Native 层的Hook,熟悉了ELF的文件结构&GOT/PLT&In Line Hook的相关知识和实际操作,Android Native Hook 的实现方式有很多种,我们接下来要讲的是(篇幅略略略长,阅读时长约20 min。

2023-06-30 17:56:21 1168

原创 【国密】Libcurl的Android库编译流程及使用详解

本文旨在提供一个Android libcurl 国密库的编译流程和使用详解国密算法(SM2/SM3/SM4)是中国国家密码管理局颁布的密码算法标准,用于安全通信、数字签名等领域,本文将使用libcurl库,因为它是一个广泛使用的,支持多种协议的网络传输库,所以需要将libcurl库与国密算法结合使用以实现国密通信~若还有问题随时评论联系我~

2023-05-08 17:45:28 1469 2

原创 【胖虎的逆向之路】04——脱壳(一代壳)原理&脱壳相关概念详解

在上文中,我们讲解了关于Android脱壳的基本办法和实际操作,现在我们来针对脱壳(一代壳)的原理和脱壳相关的基础知识介绍,由于作者能力有限,会尽力的详细描述一代壳脱壳以上就是今天要讲的内容,主要借鉴了随风而行大佬的一些思路及文章,将文章在复写一遍目的是为了加深记忆,在以后的学习过程中可以很方便的查看~

2023-01-30 19:07:58 1468

原创 【胖虎的逆向之路】03——Android一代壳脱壳办法罗列&实操

在上文中,我们讲解了关于Android整体加壳的原理和实际操作,现在我们来针对目前主流的脱壳工具以及流程进行讲解,由于作者能力有限,会尽力的详细描述整体壳脱壳提示:以下是本篇文章正文内容,下面案例可供参考本文总结了当下dex整体加壳的常用的一些脱壳方案,并进行复现,但是在这里仅作为实验加深自己的理解为主(目前也不会这么简单的就可以拿到源Dex)但是有兴趣的朋友可以像我一样去把整个流程走一遍,加深自己的理解~

2023-01-16 16:55:56 4833 2

原创 【胖虎的逆向之路】02——Android整体加壳原理详解&实现

Android Apk的加壳原理流程及详解上文中讲到了关于Android中动态加载和类加载关系的详解,也是我们本章的基础【胖虎的逆向之路】01——动态加载和类加载机制详解为了深入了解Android 逆向相关的内容中加壳的原理,前面已经完成了关于Android中的动态加载和动态加载类关系的详解,那么接下来是对Android的整体加壳进行实现,并对原理进行讲解,由于作者能力有限,会尽力的详细描述整体加壳的流程及原理,如本文中有任何错误,烦请指正,感谢~

2023-01-10 19:48:13 1418 6

原创 【胖虎的逆向之路】01——动态加载和类加载机制详解

本文记录了类加载器和动态加载之间的关系和原理,由于作者能力有限,会尽力的详细讲解两者之间的关系,如本文中有任何错误,烦请指正,感谢~Android中的类加载器机制与JVM一样遵循双亲委派(双亲加载)模式

2023-01-06 15:59:40 1550 2

原创 【胖虎的逆向之路】如何绕过 Android11新特性之 “包的可见性“

前言距离Android11 发布已经过去了,当初我有大概了解过一些Android 11上的行为变更,总体变化虽然不少,但是要求我们必须去适配的地方并不算多。对于我而言可能需要注意的是文件相关权限,譬如从访问文件到访问媒体文件再到访问全部文件,Android 日益收缩的权限,对于普通用户而言更为安全、高效,从眼光放到开发者身上则不为然,一个APP不仅仅是运行在一部手机上,所以适配要做好,比如接下来我们要讲的 “包的可见性”

2022-05-15 17:19:20 2227 15

原创 【胖虎的逆向之路】Android 7.0 上Magisk配合Xposed的相关问题

基础环境1.Android 7.1.0(硬件小米6 sagit);2.Magisk V23.03.Xposed (由Magisk-模块-搜索下载)安装首先android刷机、Magisk Root此处不表,相信大家也有这个基础的能力那么,接下来就是我们Magisk中去搜索Xposed 模块, 搜索到之后,进行安装,安装完成之后需要重启,重启之后,这个时候需要一个apk来检测我们的Xposed是否已经安装成功了,那么就到了Xposed install 的安装时候, 我这边提供了一个下载地址,是X

2022-03-09 13:42:58 5266 2

原创 【胖虎的逆向之路】Xposed Install 框架提示未安装(Could not load available ZIP files...)

胖虎的逆向之路_问题锦集_ Xposed Install 框架提示未安装(Could not load available ZIP files...)首先说原因解决方案详细问题联系方式首先说原因因为Xposed 远程服务器使用了Https, 但是 Install apk内部还是使用的Http,没有及时的更新Install apk的内部代码,就造成了访问不到,这是核心原因!当然有些同学通过翻墙也可以访问的到,在这里就不再做赘述…解决方案针对该问题进行手动修改Xposed Install 内部代码,

2021-10-18 19:23:18 5993 4

原创 Android Cause: unable to find valid certification path to requested target

Android Cause: unable to find valid certification path to requested target 问题解决办法之一嗨,大家好,提前给大家拜个早年我的问题是出在了android第三方sdk 上, 与其他问题不同, 所以多次寻找问题答案无果,就在今天早上偶然发现是因为腾讯的bugly 造成的,我注释掉之后就可以正常编译了。如下图: /* 异常上送*/// implementation 'com.tencent.bugly:crashreport

2021-02-01 10:19:58 470

原创 Android Matrix Riot (IM)SDK 集成专栏(登录注册)

Matrix Riot 介绍我的理解是一个类似 Email 分布式的开源聊天工具:https://matrix.org/ ,可以用免费服务、线上付费服务(可以绑定私有域名),也可以自己在家搭建。跟 XMPP 类似,不过 XMPP 不争气,真正好用的客户端很少,而且除文字图片之外的高级功能相互兼容不好。matrix 目前基于 json + HTTP (RESTful),支持 群组端到端加密。自建服务器也很简单。android, ios 和 浏览器 都用叫做 riot 的软件(也存在其他客户端)。线上试

2020-07-02 10:54:44 1357

原创 Android X库 BiometricPrompt 中 Crypto primitive not initialized 问题研究

问题描述手机更换指纹时后,之前配合使用的密钥Cipher失效,爆出 Key permanently invalidated (该密钥已被永久无效)错误然后返回给BiometricPrompt 使用时报错: Caused by: java.lang.IllegalStateException: Crypto primitive not initialized解决办法对已经报错的密钥,进行删除操作: _keystore.deleteEntry(KEY_NAME);而后重新获取新的密钥

2020-06-03 15:29:41 1067

原创 【微信小程序】后端支付签名验证失败的原因之签名类型冲突

支付签名验证失败的原因之签名类型冲突一系列的前置条件我就不再多说了, 有需要的可以加我QQ 7641436首先,我一开始拿到的是微信的工具包, 进行的一系列操作, 然后返回给前端,前端去做校验的时候出现了 支付签名验证失败的错, 后来经过很长~~~一段时间的摸索,确认自己的参数真的没有问题;然而问题出在了 加密形式上!如果不是在沙箱模式的话,微信支付sdk会默认是HMAC-SHA256的类型加密,但是在调用二次生成签名的时候,又是默认调用的MD5加密这就造成了,签名不一样,爆出支付签名验证失败修

2020-05-09 17:40:03 1215

原创 java中带符号十六进制转换成十进制详解

java中带符号十六进制转换成十进制详解代码如下代码如下必须拿ffff进行测试,否则测不出异同 public void test1(){ String strHex="ffff"; int ia = Integer.parseInt(strHex,16); //不带符号十六进制转换十进制 Syst...

2019-12-23 14:22:33 3699 2

原创 Android7.0 &9.0在进行APP内部自动更新时遇到的问题记录

首先,第一个问题:在Android 7.0 之后, 打开文件时报错:其次,第二个问题, 在android 9.0 上,打开intent时会闪一下, 但是打不开, 仅需要添加权限即可 <!--适应android 9.0 调用安装app--><uses-permission android:name="android.permission.REQUEST_INSTALL_P...

2019-05-20 13:36:32 3343 1

原创 Git切换及创建分支-精华

首先, 吐槽一些坑爹的博主, 在别人哪里赋值黏贴过来就是你自己的了? 完全不考虑自己的脸放在哪, 真是恶心!其次,下面说一下我遇到的坑, 我的项目之前就是 git clone 下来的,所以我原以为可以直接使用的, 但是后来使用查看分支的命令并不生效, 一怒之下,把git文件删除了,重新开始。。git init git add .git commit -m "你的描述信息"// 由于是...

2019-03-01 15:49:55 562

原创 Android Buletooth Indicate &Notify 模式共存的一个坑点。

话不多说,我在使用notify模式的时候, 出现了一个问题, 我打开notify成功了,但是write的时候返回false, 百般纠结也找不到问题所在,后来我看到一个报错信息, 是我之前增加的“高精度模式设置”,代码如下: /** * 设置高精度 * @param priority */ @RequiresApi(api = Build.VERSION_C...

2019-02-22 13:55:49 1477 1

原创 [蓝牙] Android 8.1 获取蓝牙设备地址无效;02:00:00:00:00:00

序言:对于这个问题, 谷歌是这样说的: 为了向用户提供更好的数据保护,从此版本开始,Android删除了使用Wi-Fi和蓝牙API对应用程序的设备本地硬件标识符的编程访问。链接地址:https://developer.android.com/about/versions/marshmallow/android-6.0-changes#behavior-hardware-idok、至此我们...

2019-01-02 14:52:55 4920 6

原创 【DFU】固件升级完成时,设备重启后搜索服务失败或搜索不到的解决办法

注意此问题的前提是基于NordicSemiconductor的开源库执行固件升级。就是设置几个简单的属性,但是我找了很久没有说明的,惆怅。我Q 7641436, 有问题可以随时沟通。Demo地址- https://github.com/ichason/DFU-...

2019-01-02 14:11:40 780

原创 【PC / SC智能卡】javax.smartcardio.CardException: connect() failed 解决办法

如标题所述, 我在进行Windows 上的智能卡交互系统的研发。此问题是出现在了连接过程中, 如下代码所示:CardTerminal card =c.connect("T=0");解决办法://将T=0协议换成* ,意思是说让系统自动寻找合适的协议CardTerminal card =c.connect("*");如果想了解原因所在, 那么继续往下翻。具体错误信息如下:java...

2018-10-11 17:04:09 1417

原创 [Maven] The JAVA_HOME environment variable is not definded...... 配置错误日志

. . .因为是第一次配置Maven ,所以出现了很多错误所以列举一二。出现找不到Java_Home环境变量的时候,如图。 这个时候可能是, 你的Java_Home 路径配置错误, 在Java_Home路径中,将\bin删掉, 在path后面跟\bin, 如%java_home%\bin ,而不是直接在java_home 中直接写死。...

2018-09-04 15:27:10 1900 2

原创 【Kotlin】基础学习记录

var 指定一个变量 ,这个变量在初次指定之后就已经根据赋予的值确定了var的类型, 如果修改此变量为不同的变量类型则报错。var 智能类型推断(相当于自动变量 int 不能设置long)var 智能数据类型推断是根据 =号后面的类型去推断的,而使用显式则可以。var a //报错 var a:int //正常显式数据类型 在变量名后跟 :变量类型 可以为变量指定变量...

2018-09-04 15:20:11 289

原创 【Kotiln】 错误锦集- Caused by: kotlin.NotImplementedError: An operation is not implemented: not implemen

正如标题所言, 我们在当继承一个抽象类or接口时,需要去实现它的一些方法, 正如以下所示override fun hideLoading() { TODO("not implemented") //To change body of created functions use File | Settings | File Templates. if(!prog...

2018-06-05 14:47:31 673

原创 [自定义View] Android自定义View中关于onDraw方法执行两次的解决办法

this.postInvalidate(); //更新视图这是调用View本身的刷新方法 ,看方法名的话是在主线程进行刷新,这本来是挺方便的一件事,但也就是这个方法,使得onDraw 方法走了两次。 this.invalidate(); //修改之后的代码当然了还要很多个原因,这只是其中一个,希望对你会有帮助。...

2018-05-10 21:11:18 4049

原创 关于Vivo 手机使用 Android studio安装失败的解决办法

2018-05-09 21:00:51 12387 18

原创 为自己小马虎买单——浪费了三个小时

古语有云,事出必有妖。今个上午在跟手环进行通信的时候,发送apdu命令时总是返回null,遂追本溯源,但是三个小时过去了,丝毫没有头绪,后来我发现了,是SE上电跟ATR的顺序搞反了!正确的顺序应该是:先进行SE上电!然后在进行DoATR!谨记谨记。...

2018-03-08 18:00:48 334

原创 Android 混淆(我的模板)

#-------------------------------------------定制化区域----------------------------------------------#---------------------------------1.实体类----------------------------------keep class com.gieseckedevrie...

2018-02-26 14:20:54 448

转载 Android error - Error:com.android.builder.internal.aapt.AaptException: Failed to crunch

有时候在网上下载或者从别的地方导进来的项目会报这个错误 Error:com.android.builder.internal.aapt.AaptException: Failed to crunch。这个是因为在windows系统中AndroidStudio的文件路径不能超过240字节,否则就会报此错误。(比如C:\Users\Administrator\Downloads\AndroidChro

2018-01-25 21:34:54 294

原创 关于小米6 执行安装时,提示安装失败(BAIDU_LOCATION_SERVICE)

定位SDKv3.1版本之后,以下权限已不需要,请取消声明,否则将由于Android 5.0多帐户系统加强权限管理而导致应用安装失败。 如上所述,具体原因请转此:http://blog.csdn.net/gjy211/article/details/51619422

2018-01-24 22:06:04 2398

原创 关于Apk 空包进行签名的一些坑(jarsigner)

jarsigner -verbose -keystore keystore文件路径 -signedjar 签名后生成的apk路径 待签名的apk路径 别名 如上所述,建议是全部放在同一个目录下,这样不会出一些莫名其妙的问题。

2018-01-24 21:56:26 607

原创 Python 学习记录(一)

Python学习记录(一)因为我是做Android的,有一些编程基础,所以对于某些东西,可能自然而然的就忽略过去了。如果有不懂的我很乐意为你解答,你在评论中写出即可。 此文章只为记录,不为教程,所以不存在质量之说,爱看不看。语言语言分为高级语言和低级语言首先我们来说说低级语言, 低级语言有时叫机器语言or汇编语言(逆向的哥们可能了解一点~),这一类的语言在我们看来就是0和1

2018-01-22 17:47:59 429

原创 Android Infinity 出现的原因

今天在做自定义view的时候, 由于高度除以点高的时候, 点高为0, 所以就造成了 1.0/0.0的情况,然后结果得出来就是Infinity。

2017-11-15 14:03:26 2359 2

原创 Android 线程管理之 CountDownLatch(闭锁)

好了,废话不多说;首先什么是CountDownLatch :CountDownLatch,一个线程同步管理类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。其本身带有的主要方法:public CountDownLatch(int count); public void await() throws InterruptedException public void c

2017-10-09 17:43:18 1236

原创 论 Failed to read zip file 'D:\\app\build\intermediates\transfor\proguard\debug\jars\2\1f\main.jar解决

如下是原文报错信息, Error:Execution failed for task ':app:packageDebug'. java.io.IOException: Failed to read zip file 'D:\MyAndroidProject\app\build\intermediates\transforms\proguard\debug\jars\3\1f\main.jar'.

2017-09-19 11:28:26 2589 2

原创 Android Jar中实现另一个Jar中接口的解决办法

|加固与逆向是一场永不停息的战争如题, 今天在写jar包的时候遇到这样的一个问题, 甲方呢想让我的jar包中的接口删除,然后jar包中的类去实现他们jar包中的接口,但是,我的jar包中又不能加载他们的jar包, 看官老爷们可以想象一下当时操蛋的场景,没有接口,我的具体实现类就会报错, 一报错就打包不成jar,那还玩个球?不过后来终于找到了一种解决办法:一、 首先将你的jar包,该打包打包,先不要

2017-09-07 17:53:11 714

原创 Android USB 通信(Socket 详解)

前言: 昨个帮同事忙, 应下了一个Android 与PC端通信的Demo,遂今早上折腾了一会,也算是写出来了,而且发现了一个比较严重的问题:参考资料都是12年,13年的,很多的Sample 都是不能用的, 所以打算更新一下。Android Code首先是清单文件中的权限: <uses-permission android:name="android.hardware.usb.host" /

2017-07-20 15:21:11 2907 3

极光推送Demo

极光推送小Demo,原生的,配合我的文章一起看会比较好,不建议整套搬过去,有选择的去拿。祝你尽快完成

2016-07-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除