首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    HarmonyOS 开发实践 —— 基于反混淆工具混淆后的日志定位

    export导出对象混淆  -enable-export-obfuscation两次运行工程分别点击工程内的Native按钮和ArkTS按钮获取混淆后的报错日志。...2.获取原工程混淆后build产物目录下的sourceMaps.map文件,nameCache.json文件,以及生成的so文件(根据运行的设备的CPU架构选取对应的so文件)产物路径参考下图:方案描述...Name cache:混淆名称映射表,文件中包含混淆前和混淆后的名称。Start Analyze:开始解析。2.使用hstack命令的方式进行日志反混淆。...input -o E:\hstackTest\output -s E:\hstackTest\sourcemap -n E:\hstackTest\nameCache在output文件夹中即可看到解析后的...ArkTS堆栈文件(解析后的文件会在原文件名下增加一个“_”命名),解析效果展示:Native堆栈报错信息反混淆操作演示。

    11610

    【Android 安全】DEX 加密 ( Proguard 混淆 | 混淆后的报错信息 | Proguard 混淆映射文件 mapping.txt )

    文章目录 一、Proguard 混淆后的报错信息 二、Proguard 混淆映射文件 mapping.txt 更多 ProGuard 混淆配置参考 : https://www.guardsquare.com.../en/products/proguard/manual/usage 一、Proguard 混淆后的报错信息 ---- 前提 : proguard-rules.pro 混淆配置中配置保留行数 ; # 保留行数...-keepattributes SourceFile,LineNumberTable 当代码混淆后 , 如果出现报错信息 , 此时报错信息全部都是被混淆过的信息, 无法从中找出可用的信息 ; 混淆后...报错信息不可读 ; 下面是截取出的混淆后的报错信息 : 2020-11-10 12:01:59.426 28142-28142/?...(Handler.java:30) , 报错的是混淆后的信息 , 可读性很差 ; 二、Proguard 混淆映射文件 mapping.txt ---- 前提 : proguard-rules.pro 混淆配置中配置保留行数

    1K00

    Java 代码混淆快速上手

    这种方式就是本篇的主题,代码混淆(Obfuscation)混淆的核心概念在正式开始实战前,先对代码混淆的核心概念有一些认知。场景为什么需要代码混淆呢?...原理Java 是编译成Class字节码再被JVM所运行的,所以编译和运行阶段都是可以混淆的关键阶段。字节码工具: ASM、Javassist、Byte Buddy。...最常见的就是字符串加密,对应用程序中的敏感字符串进行加密处理,使得反编译后的代码无法直接获取原始字符串。为了加大逆向难度,还可以通过插入无用指令、改变指令执行顺序等方式,打乱代码的执行流程等操作。...环境,可以直接双击lib/proguardgui.jar来启动,这是一个友好的 Java 构建的桌面版。...启动失败请检查环境或者尝试用java -jar 的命令来打开。使用说明首页就是广告,从第一个input / output上手,设置要输入等待混淆的jar包,以及设置输出路径。下图就是我的设置完的效果。

    15900

    Android制作AAR包并混淆后加载调用

    混淆过后通过原来的名字去找混淆后的名字,是找不到对应方法和类,就会出异常报错。所以有些情况是不能进行混淆的。...自定义控件不进行混淆 枚举类不被混淆 反射类不进行混淆 实体类不被混淆 JS调用的Java方法 四大组件不进行混淆 JNI中调用类不进行混淆 Layout布局使用的View构造函数、android:onClick....* {*;} 在此基础上,我们也可以使用Java的基本规则来保护特定类不被混淆,比如我们可以用extend,implement等这些Java规则。...以上内容时混淆规则中需要重点掌握的,了解后,基本所有的混淆规则文件你应该都能看懂了。再配合以下几点注意事项,开启你为自己代码,实现混淆规则之旅吧。...03 混淆模版 基本指令 # 设置混淆的压缩比率 0 ~ 7 -optimizationpasses 5 # 混淆时不使用大小写混合,混淆后的类名为小写 -dontusemixedcaseclassnames

    5.3K30

    js混淆与反混淆

    JS混淆和反混淆常见思路 在了解了js代码的执行过程后,我们来看如何对js进行混淆。...可以想到比如我们想实现一个js混淆器我们该怎么做呢,要不就是用正则替换,要不就是在AST阶段生成混淆代码,用正则替换实现简单但是效果也比较差,现在js混淆大多数都是在不改变AST的情况下去生成混淆后的代码...代码混淆 这里我们抛砖引玉,讲一些比较常见的混淆方式,实际上混淆的办法非常的多。...我们跟进这个b(e)看一下 这个函数主题的逻辑就是根据我们传入的这个字符串来进行一些位运算,最终能够得到一个sign 找到这部分逻辑后我们可以把生成sign的部分代码从混淆的函数中抽离出来了 var...需要通过对这个混淆的js进行调试,发现这个js中有发送消息的函数,逆出来其中的逻辑之后,制作一个用于恶意的HTML页面,Bot(相当于一个也安装了3FA插件的真人)访问后,Bot的flag就会显示在页面上

    11.7K41

    Android 代码混淆 混淆方案

    将混淆过的包进行全方面测试,检查是否有 bug 产生。 解出混淆栈 混淆后的类、方法名等等难以阅读,这固然会增加逆向工程的难度,但对追踪线上 crash 也造成了阻碍。...双击运行 proguardgui.bat 后,可以看到左侧的一行菜单。...点击 ReTrace,选择该混淆包对应的 mapping 文件(混淆后在 /build/outputs/mapping/release/ 路径下会生成 mapping.txt...文件,它的作用是提供混淆前后类、方法、类成员等的对照表),再将 crash 的 stack trace 黏贴进输入框中,点击右下角的 ReTrace ,混淆后的堆栈信息就显示出来了。...最后附上一个我在实际项目中的混淆方案 proguard-android.txt文件内容 # 代码混淆压缩比,在0~7之间 -optimizationpasses 5 # 混合时不使用大小写混合,混合后的类名为小写

    2.7K30

    Kotlin 反射与 MetaData 的关系在混淆后浮出水面!

    可能有些朋友可能还没有反应过来这是什么意思,如果我们使用 Java 反射的话,哪怕 SuperClass 这个类已经被混淆成了 a,那么使用 SubClass 获取它的父类也应该是去找 a 这个类,而不会仍然回去找什么...Kotlin 反射的小伎俩 Kotlin 反射能够拿到 Java 反射拿不到的很多东西,这一点毋庸置疑,毕竟 Kotlin 的语法特性更复杂,需要的信息也更多。...sources for module app"} ) public final class SubClass extends SuperClass { ... } 上面给出的是 SubClass 编译后的字节码反编译得到的...Java 代码,我们看到 Metadata 这个注解当中包含了很多信息,其中 d2 当中就包含了这个类所有的父类信息。...也真是这个原因,混淆后 SuperClass 被混淆为了 a, SubClass 的注解中存的仍然是 SuperClass。 没错,混淆之后出现找不到类的问题是合乎情理的。

    1.7K10

    修改混淆过的JAVA字节码文件

    这俩天遇到了这样的问题,反编译JAR包之后,出现了没法再javac的问题(修改java文件再编译回去的想法泡汤),原因大概是因为JAR的发行商对其作了很多的加密混淆处理,和签名处理。  ...刚开始想直接将需要的class文件进行修改,发现这样一个问题,使用工具类将需要的位置字节码参数修改完之后,将修改后的文件压缩回原来的JAR,JAR不能用了。...另外,它还提供一个库,可以让开发人员读写Java类文件和字节码。...当你看到jar包的META-INF目录下有文章开始提的三个文件时,恭喜你下面可以开始去签名破解了,请看工具类: 在任何一个java类中写上以上代码,然后就可以编译了,用工具也好,用javac也好,反正编译好后再对应目录下能看到...// 使用JDK编译代码 javac XX.java 将需要去签名的jar包放到编译好的class文件的目录,或者记住jar包目录,打开DOS窗口: // 执行XX,如果是同一个文件夹 java

    1.1K20

    【Android 安全】DEX 加密 ( ProGuard 混淆 | -keepclassmembers 混淆效果 | -keepclasseswithmembernames 混淆效果 )

    文章目录 一、Proguard 默认混淆结果 二、-keepclassmembers 混淆效果 二、-keepclasseswithmembernames 混淆效果 更多 ProGuard 混淆配置参考..., Thread , 其余 Java 文件都被混淆 ; 二、-keepclassmembers 混淆效果 ---- -keepclassmembers 作用只是保证类成员 ( 成员变量 , 成员方法...) 不被混淆 , 类名还是会被混淆的 ; # 指定 kim.hsl.handler.Handler 类成员不被混淆 -keepclassmembers public class kim.hsl.handler.Handler...在编译后的结果中 , 类名与成员名称都被混淆了 , 因为没有配置不被混淆的成员 ; 使用 -keepclassmembers 指定保留 Handler 中的 public void *(*) 样式的方法不被混淆...*(*); } 下面是在一个被混淆的类中 , 找到了没有被混淆的 kim.hsl.handler.Handler 的成员方法 ; 二、-keepclasseswithmembernames 混淆效果

    4.5K00

    哥斯拉Godzilla | 基于tomcat webshell的有效通杀混淆方式&通用的java代码混淆

    /1739/ 中的反射免杀(跟上一篇文章提到的shell模板改造类似) 还有一些本次二开没用到的html编码混淆、字节码免杀(编译成class文件后将内容进行base64编码)、自建漏洞(jndi注入、...插入指定的编码后的shell内容。...5.jsp比原文件4.jsp的文件大小要大一倍 原文件和编码后的文件,使用sublime工具打开,如下图(可以看到编码后的shell内容还是可见的): 010editor打开5.jsp查看二进制数据:...加密器的生成木马逻辑代码修改 也就是将第2点提到的功能应用到Godzilla中JAVA_RSA加密器的生成木马逻辑中(代码逻辑比较简陋粗糙) //修改后的JAVA_RSA加密器的Generate类的代码如下...编译后的木马生成界面以及能够生成的混淆webshell的功能选项如下: 经测试,混淆后的webshell均可连接成功,部分混淆的效果如下 混淆后的代码能够极大地增加蓝队的解密/还原代码的成本,连接测试

    83210

    iOS代码混淆(Python混淆脚本)

    前言 最近一直在看Python,也很喜欢Python的灵活性;今天主要想说的是iOS的代码混淆,为什么想做代码混淆?...我这里主要是通过Python写的混淆工具,具体功能有方法混淆、属性混淆、类名混淆、添加垃圾代码、自动创建垃圾类、删除注释、修改资源文件Hash值、加密字符串、翻新资源名、模拟人工混淆、混淆文件名、混淆文件目录...、混淆词库、混淆日志、映射列表、敏感词过滤、图片压缩、爬虫服务、修改项目名,具体的如下: 代码混淆-3.jpg 软件界面 ZFJObsLib混淆工具全面支持OC项目工程、swift项目和u3d项目!!!...' + '*' * 30) personinfo.isMissing = False 混淆日志 混淆的部分日志,混淆的时候回通过import logging自动生成混淆日志《ZFJ混淆日志.log》,...cdvsvbdsbdfgnfdhnhdg"]; [self.view addSubview:zfjView]; [ZFJView svdsvfdsvfdvbzdfb]; } 编译后的代码如下

    3.6K90

    Android代码混淆之混淆规则

    请尊重他人的劳动成果,转载请注明出处:《Android代码混淆技巧》 因为Android是使用Java开发的,所以开发者可以使用ProGuard对代码进行混淆。...ProGuard是一个免费的Java类文件收缩,优化,混淆和预校验器。它可以检测并删除未使用的类,字段,方法和属性。它可以优化字节码,并删除未使用的指令。...最后,预校验的Java6或针对Java MicroEdition的所述处理后的码。 下面就和大家分享一下对使用了第三方库的项目进行混淆的经验。...ProGuard默认会对第三方库也进行混淆的,而第三方库有的已经混淆过了,有的使用了Java反射技术,所以我们在进行代码混淆的时候要排除这些第三方库。...); java.lang.Object writeReplace(); java.lang.Object readResolve(); } -dontwarn com.google.gson

    1.5K20
    领券