自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

逆向随笔

个人博客 https://forgo7ten.github.io/

  • 博客(165)
  • 资源 (8)
  • 问答 (1)
  • 收藏
  • 关注

原创 攻防世界MOBILE区WriteUp

攻防世界官网:攻防世界-答题mobile区mobile新手练习区easyjniPh0en1x-100RememberOtherapp1app2app3easy-apkeasyjavaeasy-dexeasy-so黑客精神你是谁高手进阶区基础androidAPK逆向人民的名义-抓捕赵德汉1-200boomshakalaka-3Android2.0Illusion...

2022-05-10 17:37:44 1372 5

原创 杂七杂八(12):Bilibili视频缓存 m4s音视频合并 shell脚本

Bilibili m4s音视频合并

2023-02-21 12:57:09 473 1

原创 【移动安全-0】Mac无坑配置MobSF与Pycharm调试

有运行配置,采用gunicorn运行。

2023-01-04 12:04:38 556

原创 re学习笔记(101)i春秋 全国大学生信息安全竞赛 计时挑战

本文首发于 i春秋公众号 巧用Frida与Unidbg快速在CTF中解题Frida是一个方便快捷的hook框架,在安卓逆向中是必不可少的hook工具。而对代码量不大的CTF安卓逆向题目来讲,使用Frida更是如鱼得水,调试程序、打印输出等都极为方便,就算有相应的检测,由于CTF中代码量并不是很大的情况,也可以快捷的定位、并对其进行hook绕过。而Unidbg可以对so层中的函数进行模拟执行,对于CTF题目来讲,往往无需太多的“补环境”,Unidbg就能将指定的函数模拟执行起来并获得结果。在本文中笔者将以全国

2022-06-18 10:18:23 902

原创 踩坑及问题解决记录贴合集 不定时更新

ubuntu 20.04中文输入法安装谷歌输入法linux下AndroidSutdio不能调试:Debugger process finished with exit code 127. A library required by the native debugger might be missing on your system. See idea.log file for more details.ubuntu突然没有网络,网络图标消失不见重启网络开发Android开发安装APK报错Failu

2022-06-14 11:13:40 1133

原创 Unidbg打Jar包方式

以先前WebServer为例子,多模块的例子配置所有模块,配置启动的Main Class;META-INF选择 Server模块的src目录文件路径使用相对路径编译工件将apk放在jar包同目录,运行可得结果将Unidbg项目打Jar包后引入点击ok在自己的模块中添加jar包依赖(本地依赖该jar包)使用插件使用命令进行打包普通项目打Jar包IDEA方式同Unidbg方式一,选择指定模块;META-INF选择 Server模块的src目录参考 Maven打包可执行jar包方法大

2022-06-13 18:02:06 2118

原创 Android(9) Unidbg添加SpringBoot Web服务

文章目录1. 添加Server模块方法① unidbg作为模块引入方法② Web作为模块引入2. 配置Server模块3. 编写Unidbg代码3. 修改SpringBoot配置、服务1. 添加Server模块方法① unidbg作为模块引入IDEA新建SpringBoot项目从已存在的模块中导入Unidbg方法② Web作为模块引入IDEA打开Unidbg项目,新建SpringBoot模块2. 配置Server模块修改pom.xml文件,添加依赖 <dependenc

2022-05-31 00:40:47 939 1

原创 re学习笔记(99)攻防世界 mobile进阶区 LoopCrypto

apk反编译MainActivity非常简单,解密字符串注册一个点击事件点击监听a类,获取用户输入,和程序签名一同传入Decode类的check()方法中Decode类a方法的流程差不多是r21-r23:每个字节的八位,前四位与后四位互换r24-r31:数组每位的值等于与前一位循环异或得到的值r32-r39:数组的每位循环减去前一位,同时减去58check()是native方法http://blog.sina.com.cn/s/blog_81e7361e0102uyge.htmlh

2022-05-30 13:27:06 1517 2

原创 Python grpc协议通信 与 protobuf序列化

GitHub仓库地址:https://github.com/protocolbuffers/protobufGoogle文档:https://developers.google.com/protocol-buffers/https://docs.qq.com/doc/DV2t5TWhvZ21Eend6protobuf安装GitHub release页面下载:将win64解压,bin目录添加进入环境变量,可以使用protoc.exe来生成相关类解压protobuf-python-3.20.1.z

2022-05-15 19:19:18 641

原创 Frida ALL IN ONE

文章目录Frida all in oneFrida环境与基础使用多python frida版本切换pyenv安装pyenv使用Frida环境安装手机环境配置监听Objection环境安装Frida开发环境搭建Objection使用Objection基本使用objection插件WallbreakerFRIDA-DEXDumpobjection高级使用Frida Java层应用hook方法hook静态方法与实例方法hook构造方法对方法重载的hookhook指定方法的所有重载hook内部类与匿名类中的方法内存

2022-05-04 20:49:15 884

原创 杂七杂八(11):重装系统个性化配置

记录备查安装Chrome浏览器,安装KeePassHttp-Connector浏览器插件进行密码管理安装IDM,浏览器插件拖拽住IDM安装目录下的IDMGCExt.crx进行安装安装Typora 安装Typora情况下,Windows右键新建菜单中增加新建md文件安装jdk8 11,配置java环境安装python2,python3电源设置 高级设置 显示休眠安装nodejs修改全局包路径npm config set prefix "C:\node\node_global"npm con

2022-04-05 09:06:17 515

原创 杂七杂八(10):Windows运行cmd脚本关闭黑窗口的方法

第一种方法 vbs脚本加载cmd命令DIM objShellDIM commandset objShell=wscript.createObject("wscript.shell")' 相关运行的cmd命令command="java -javaagent:BurpLoaderKeygen.jar -noverify -jar burpsuite_pro_v2021.7.jar"iReturn=objShell.Run(command, 0, TRUE)第二种方法 vbs脚本加载cmd命令脚本

2022-04-03 16:50:36 1642

原创 CTF-RE 笔记汇总

做了笔记从来不看系列……丢云端清本地了文章目录滴水2015-01-12(进制01)2015-01-13(进制01)2015-01-14(数据宽度_逻辑运算)2015-01-15(通用寄存器_内存读写)2015-01-16(内存地址_堆栈)2015-01-19(标志寄存器)2015-01-20(JCC补录)2015-01-23(C语言完整版)2015-01-26 (c语言02_数据类型)2015-02-05 (结构体 字节对齐)2015-02-06 (switch语句反汇编)指针位运算汇编笔记第二章 寄存器

2022-04-02 14:38:04 1946 2

原创 angr学习-笔记汇总

整理存货…乱七八糟的angr实战00_angr_findimport angrp = angr.Project('/home/cx330/Desktop/Debugging/learn/00_angr_find',auto_load_libs=False)# 加载文件# auto_load_libs=False 不加载共享库文件state = p.factory.entry_state()# 创建一个状态state# entry_state() 构造一个已经准备好从函数入口点执行的

2022-04-02 14:27:34 6233

原创 Android开发(13):ViewPager2使用

ViewPager2使用ViewPager2+Fragmentgradle添加ViewPager2依赖dependencies { implementation "androidx.viewpager2:viewpager2:1.0.0"}layout布局中添加控件<androidx.viewpager2.widget.ViewPager2 android:layout_width="match_parent" android:layout_height=

2022-02-07 12:19:03 2879

原创 Android(-1) 逆向笔记杂记

乱七八糟的一些东西,本地删了,备份环境搭建JDK安装及配置链接:https://pan.baidu.com/s/146I4vDJdz8YeR0OEqLS8xw 提取码:7h00SDK环境配置链接:https://pan.baidu.com/s/1A8rwqyw8Nn7p93Axqpll3A 提取码:cwv4NDK环境配置链接:https://pan.baidu.com/s/1GBFK8r5R_GPSnIpTwpljKw 提取码:aj1aeclipse集成开发环境搭建链接:h

2022-02-03 22:15:22 2784

原创 Android开发(12):Fragment的使用

个人笔记整理FragmentFragment使用Acitivity静态添加Fragment:布局中添加控件<fragment android:name="<Fragment全类名>" android:layout_width="" android:layout_height="" android:id="@+id/fragment_one" />使用全类名直接指定相应fragment,act

2022-01-30 21:58:12 2592

原创 Android开发(11):继续进阶—应该掌握的高级技巧

个人笔记整理继续进阶—应该掌握的高级技巧全局获取Context技巧定义一个MyApp类,继承Applicationpublic class MyApplication extends Application { private static Context context; @Override public void onCreate() { context = getApplicationContext(); } public static

2022-01-24 16:56:50 883

原创 Android开发(10):最 佳的UI体验——MaterialDesign实战

个人笔记整理最佳的UI体验——MaterialDesign实战Toolbar项目主题由AndroidManifest中的android:theme指定,默认继承的Theme.AppCompat.Light.DarkActionBar含有ActionBar指定一个不带ActionBar的主题:Theme.AppCompat.NoActionBar(深色主题) 和Theme.AppCompat.Light.NoActionBar(浅色主题)这两种主题可选而AppTheme的style中指定的item有

2022-01-23 13:11:14 229

原创 re学习笔记(100)python-bytecode | python字节码学习

之前博客的,搬过来python-bytecode官方文档:dis — Python 字节码反汇编器栈基本操作TOS栈顶(栈上最高地址的值)TOS1栈上第二高地址的值TOS2栈上第三高地址的值…………LOAD_NAME压栈LOAD_GLOBAL:全局变量LOAD_FAST:局部变量LOAD_CONST:常量LOAD_ATTR:对象中的属性POP_TOPpopROT_TWOTOS1,TOS1互换ROT_THREE栈顶

2022-01-22 12:47:51 618

原创 Android开发(9):基于位置的服务

个人笔记整理基于位置的服务百度地图API申请API前往百度开放服务平台 (baidu.com)注册开发者来到控制台 | 百度地图开放平台 (baidu.com)创建应用应用名称随意,应用类型选择【Android SDK】获取开发版(debug) SHA1前往系统的.android目录,默认位于~/.android输入命令E:\code\Android\.android>keytool -list -v -keystore debug.keystore输入密钥库口令:密钥库类型:

2022-01-22 11:18:32 1084

原创 Android(8) Android APK无源码动态调试合集

Android动态调试合集文章目录Android动态调试合集JEB动态调试smali使用AndroidStudio配合Smalidea插件来动态调试smaliIDA动态调试so调试app一启动就执行的native函数调试可以手动触发的函数错误踩坑解决Smalidea调试【附加】时无设备或进程此外debuggable属性app在清单中添加debuggable属性修改设备的`ro.debuggable=1`安装magisk后magisk安装`MagiskHide Props Config`模块JEB动态调试

2022-01-21 15:57:15 768

原创 Android开发(8):Service服务

个人笔记整理Service服务服务(Service)是Android中实现程序后台运行的解决方案,它非常适合去执行那些不需要和用户交互而且还要求长期运行的任务Android多线程继承Thread类class MyThread extends Thread { @Override public void run() { // 处理具体的逻辑 }}// 调用new MyThread().start();实现Runnable接口class

2022-01-20 23:50:47 1371

原创 Android开发(7):使用网络技术

个人笔记整理使用网络技术使用Http访问网络使用HttpURLConnection// new一个Url对象URL url = new URL("http://www.baidu.com");// new HttpURLConnection 新建连接HttpURLConnection connection = (HttpURLConnection) url.openConnection();// 可设置请求方式 GET/POSTconnection.setRequestMethod("GE

2022-01-19 13:07:48 1483

原创 Android开发(6):ContentProvider内容提供者

ContentProvider内容提供者内容提供器(Content Provider)主要用于在不同的应用程序之间实现数据共享的功能,它提供了一套完整的机制,允许一个程序访问另一个程序中的数据,同时还能保证被访数据的安全性。目前,使用内容提供器是Android实现跨程序共享数据的标准方式。运行时权限运行时权限机制Android现在将所有的权限归成了两类,一类是普通权限,一类是危险权限。准确地讲,其实还有第三类特殊权限,不过这种权限使用得很少,因此不在本书的讨论范围之内。普通权限指的是那些不会直接威胁

2022-01-18 13:04:43 633

原创 Android开发(5):数据存储 持久化技术

个人笔记整理数据存储 持久化技术文件存储Context 类中提供了一个openFileOutput() 方法,可以用于将数据存储到指定的文件中。第一个参数为文件名(默认存储到/data/data/<package name>/files/目录下)第二个参数是文件的操作模式,主要有两种模式可选,MODE_PRIVATE和MODE_APPEND。其中MODE_PRIVATE是默认的操作模式,表示当指定同样文件名的时候,所写入的内容将会覆盖原文件中的内容,而MODE_APPEND则表示如

2022-01-17 12:53:09 902

原创 Android开发(4):广播接收者BroadcastReceiver

个人笔记整理广播接收者BroadcastReceiver广播机制简介标准广播 (Normal broadcasts)是一种完全异步执行的广播,在广播发出之后,所有的广播接收器几乎都会在同一时刻接收到这条广播消息,因此它们之间没有任何先后顺序可言。这种广播的效率会比较高,但同时也意味着它是无法被截断的。有序广播 (Ordered broadcasts)则是一种同步执行的广播,在广播发出之后,同一时刻只会有一个广播接收器能够收到这条广播消息,当这个广播接收器中的逻辑执行完毕后,广播才会继续传递

2022-01-16 08:30:00 498

原创 re学习笔记(98)攻防世界 mobile进阶区 ill-intentions

题目描述:Do you have have ill intentions?打开查看MainActivity,仅仅注册了一个广播接收者而这个广播接收者也没什么代码,仅仅是接受到不同的信息跳转到不同的Acitivity三个Activity各有一个native函数三个类逻辑差不多相同,只是调用的native方法不同,关系如下DefinitelyNotThisOne:definitelyNotThissThisTheRealOne:perhapsThisThisIsTheRealOne:o.

2022-01-15 12:30:18 3915

原创 Android开发(3):Activity活动

个人笔记整理Activity活动活动基本用法注册活动需要在AndroidManifest.xml中的application节点中注册activity<activity android:name=".FirstActivity"/>若为主Activity<activity android:name=".FirstActivity" android:label="This is FirstActivity"> <intent-filter>

2022-01-15 07:15:00 327

原创 Android开发(2): Android 资源

个人笔记整理Android 资源Android中的资源,一般分为两类:系统内置资源:Android SDK中所提供的已经定义好的资源,用户可以直接拿来使用。用户自定义资源:用户自己定义或引入的,只适用于当前应用的资源。res目录res目录:可以使用R类访问的资源,放到该目录下。res子目录可以存放的资源res/anim定义补间动画的XML文件res/color定义不同状态下颜色列表的XML文件res/drawable各种位图文件(png、jpg

2022-01-14 07:15:00 436

原创 re学习笔记(97)攻防世界 mobile进阶区 APK逆向-2 AndroidManifest.xml修复

题目描述:提交那一串XXXXXXXXXXXXXX即可。下载下来安装后报错Performing Streamed Installadb: failed to install ap.apk: Failure [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION: Failed to parse /data/app/vmdl1255401458.tmp/base.apk: Corrupt XML binary file]同时使用apktool反编译也报错java -.

2022-01-13 18:36:53 4280

原创 Android开发(1):Android UI控件

个人笔记整理Android UI控件控件属性作用值android:layout_width设置宽match_parent fill_parent wrap_contentandroid:layout_height设置高xx dpandroid:gravity内容对齐方式top 、bottom 、left 、right、centerandroid:text文字内容android:textSize文字大小xx spandr

2022-01-12 14:44:49 534

原创 Android开发(0):Android基础、项目目录结构

个人笔记整理Android基础、项目目录结构项目结构Project.gradle和.idea:这两个目录下放置的都是Android Studio自动生成的一些文件,我们无须关心,也不要去手动编辑。app:项目中的代码、资源等内容几乎都是放置在这个目录下的,开发工作也基本都是在这个目录下进行的。build:这个目录你也不需要过多关心,它主要包含了一些在编译时自动生成的文件。gradle:这个目录下包含了gradle wrapper的配置文件,使用gradle wrapper的方式

2022-01-12 14:42:38 503

原创 re学习笔记(96)攻防世界 - mobile区 - app3

.ab格式,下载工具nelenkov/android-backup-extractor: Android backup extractor (github.com)进行解包java -jar abe.jar unpack app.ab app.tar解压后里面有base.apk

2022-01-11 22:39:18 1010

原创 re学习笔记(95) 2021ByteCTF intent重定向浅析

一直没搬过来由2021ByteCTF引出的intent重定向浅析在此先感谢ByteCTF的赛前培训,感谢summer师傅的倾情讲解Intent浅要概述Intent是Android程序中各组件之间进行交互的一种重要方式,它不仅可以指明当前组件想要执行的动作,还可以在不同组件之间传递数据。Intent一般可被用于启动活动、启动服务以及发送广播等场景。Intent是一种运行时绑定(runtime binding)机制,它能在程序运行的过程中连接两个不同的组件。通过Intent,你的程序可以向Andro

2022-01-10 22:19:49 3340

原创 踩坑及问题解决记录贴合集 不定时更新

ubuntu篇ubuntu 20.04中文输入法安装谷歌输入法

2022-01-09 13:27:04 1322

原创 Android(7) Android NDK开发:第一个Jni实践

NDK开发:第一个Jni实践项目源码及原文档在Github:【Forgo7ten / AndroidReversePractice】1. 使用AS新建一个ndk项目new一个project选择模板Native C++Next,修改项目名、包名、及所在目录,Next,Finish目录结构:Android开发者文档:向您的项目添加 C 和 C++ 代码 | Android 开发者 | Android Developers (google.cn)2. 新建so源文件并在java中调用

2022-01-06 00:30:00 794

原创 杂七杂八(9): IDEA初始化配置 & 插件收集

文章目录IDEA初始化配置代码不分大小写不全关闭打开项目为最后关闭项目设置包自动导入显示空格与方法分割线设置文件头模板添加方法注释模板IDEA初始化配置代码不分大小写不全关闭打开项目为最后关闭项目设置包自动导入显示空格与方法分割线设置文件头模板添加/** * @ClassName ${NAME} * @Description //TODO * @Author ${USER} * @Date ${DATE} **/添加方法注释模板...

2022-01-05 14:56:05 261

转载 【转载】Android逆向开发之smali语言的学习

Android逆向开发之smali语言的学习该文转载自乱码三千 – 分享实用IT技术smali和java基本数据类型对比smalijavaBbyteSshortIintJlongFfloatDdoubleCcharZbooleanVvoid[数组L+全类名路径用/分割object注释在smali语言中注释使用#表示# 我是注释类声明.class +权限修饰符 +类名;比如以下jav

2022-01-05 01:27:20 765

原创 re学习笔记(94)第四届2021美团网络安全高校挑战赛 - Random

动调时候报错,除以0异常在main函数这里手动制造了一个错误查看导入表发现有SEH注册的函数且这里多了个分支根据交叉引用找到seh注册的异常可以断定出现div 0异常后会执行loc_CA115D的逻辑main函数是一个递归,根据dword_CA336C==43来结束递归,且不等于0时不输入字符主功能就是将输入的字符和随机数进行异或,重点是找准srand的时机三处下断点,发现main函数的流程就是执行两次srand(rand())后,再和rand()进行异或exp为#inclu

2021-12-12 00:00:00 2558

XPOSED依赖JAR包下载, XposedBridgeApi-81.jar

XPOSED依赖JAR包下载, XposedBridgeApi-81.jar

2022-01-23

XPOSED依赖JAR包下载, XposedBridgeApi-53.jar

内有XposedBridgeApi-53.jar XposedBridgeApi-53-source.jar两个文件

2022-01-23

XPOSED依赖JAR包下载, XposedBridgeApi-82.jar

内有XposedBridgeApi-82.jar XposedBridgeApi-82-source.jar两个文件 api-82.jar SHA-1:35866b507b360d4789ff389ad7386b6e8bbf6cc4 api-82-source.jar SHA-1:2030f71764b06b2f39fa1a85660690aa834cfd84

2022-01-23

自写AndroidStudio JNI编程静态注册 编译调用so源码

自写AndroidStudio JNI编程静态注册 编译调用so,雷电模拟器3可正常运行。Android Studio直接导入项目即可使用

2021-07-17

.NET程序 解混淆器和解压缩器

de4dot .NET程序解混淆器和解压缩器,代码还原,支持二十余种混淆器的代码还原。包括CodeWall CryptoObfuscator DeepSea Obfuscator Dotfuscator .NET Reactor Eazfuscator.NET Goliath.NET ILProtector MaxtoCode MPRESS 多种混淆器的解混淆

2020-03-25

C语言tea,xtea,xxtea,RC4,base64加解密实现头文件

C语言tea,xtea,xxtea,RC4,base64,base64自定义字符表加解密实现的头文件,已封装好。可直接调用函数使用

2020-03-25

一键搭建pwn环境脚本

一键搭建pwn环境脚本,安装pwntools, libc-database,vim, ropper, ROPgadget,libc-debug,ssh, one_gadget, pwndbg + pwngdb, 。其中pwntools为python3库 使用方法: chmod +x init_pwn.sh ./init_pwn.sh

2020-03-25

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

TA关注的人

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