随笔
Java中类的加载机制
前言 了解了基本的反射机制以后,对于动态加载还是看不太懂,再学习一下类的加载机制,分为Java篇和Android篇。个人对于原理机制理解能力不强,内容大都参考网上博文,整合了自己的理解,也算积累一些追究原理的方法和经验。 类的生命周期 **…
[转载]十分钟读懂AES加密算法
前言 对AES加密算法认知过于浅显,看到一篇翻译过来的配有漫画的文章,粗读一遍感觉很不错,转载过来作为学习。 转载来源Lee_rw的博客 英文原文Moserware的《A Stick Figure Guide to the Advanced…
省赛逆向学习总结
re1 file main函数如下 flllag和sttr_home字符串都是明显可见的,进行异或后得到一组数据,将得到的数据写入文件,求得该文件的md5即flag。当时理解错了题意,以为求出来的字符串应该是类似md5格式的字母和数字,但是…
RC4加密算法
例题 题目提示是常见的加密算法,逻辑很简单,但是没有认出是什么算法,尝试直接破解失败了所以就去做其他题目了(3小时30个题……) 变量名进行了简单的混淆,输入24位flag,经过函数sub_400686加密后和四下划线数组比较,相等则put…
Java里的反射机制
基本介绍 反射主要是指程序可以访问、检测和修改它本身状态或行为的一种能力。在计算机科学领域,反射是一类应用,它们能够自描述和自控制。这类应用通过某种机制来实现对自己行为的描述和检测,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状…
Xposed模块学习
genymotion模拟器 之前只用过夜神、逍遥等安卓模拟器,调试的时候并不是很方便,而且那些模拟器也偏日常使用吧。这次尝试了genymotion模拟器,在官网找到了个人使用免费版,使用过程中虽然也有小问题出现,但是整体体验很好。启动迅速,…
Feistel Cipher
前言 对于密码学实在是很头大,没有足够的数学功力支撑,有时候理解和实践起来要慢很多。这里简单记录一下关于Feistel cipher的知识。 简介 Feistel cipher是一种用于构造分组密码的对称结构,大部分分组密码使用该方案,包括…
简单复现CVE-2017-16995
前言 源于有个同学的课设是复现安全漏洞,刚好自己也没尝试过,借此机会找了一个看起来相对容易复现的漏洞体会一下复现过程。 漏洞概述 内核中Berkeley Packet Filter(BPF)实现中, Linux内核4.14.8版本开始ker…
TJCTF2018部分wp
前言 上周和小伙伴打了个TJCTF,美国高中生的比赛也没那么吃得消=-=有一些题目的脑洞过大,工具新奇,也算是学到一些东西。就记录几个题目的解题过程。 题目 Interference(15points/270solvers) 简单隐写题目,…
Android so文件解析
About so# so(shared object,共享库)是机器可以直接运行的二进制代码,是Android上的动态链接库,类似于Windows上的dll。每一个Android应用所支持的ABI是由其APK提供的.so文件决定的,这些so…
Android JNI入门
前言# 初步学习Android NDK开发,尝试用as编写so文件并在java层调用它,从而更好地理解Android JNI(java native interface)技术。关于so文件的格式解析工作还没有做好,过几天再补上文档。 JNI…
MIPS逆向工具
前言 源于一道QCTF的babymips题目,一直没找到很好的反编译工具,也没配好动态调试的环境(配置环境真是麻烦啊),生啃指令集也没把逻辑通顺,结束后参考一些wp和之前的Mips题目重新找了找工具和配环境,希望再碰到Mips题目能有所帮助…