- 博客(12)
- 收藏
- 关注
原创 关于攻击手段中的覆写C++虚函数达到利用目的的一些思考
笔者是个正在努力成长的新手,能力有限,如果文章有何不妥当的地方,欢迎大家指出,多多给建议…图中的注释是自己的一些理解:关于shellcode的构造问题(分析下构造好的shellcode在内存中的位置),这里不贴图了,参考书目《C++反汇编与逆向分析技术揭秘》《0day安全软件漏洞分析技术》以及一些文章…ps:学习真的不能钻牛角尖,到了某个学习过程,慢慢的就融会贯通…之前有点懵逼的说...
2019-03-25 20:56:25 336 1
原创 小甲鱼加解密--突破未注册版软件的限制
笔者是个新手小白,能力有限,如果文章有不当之处,还请各位前辈批正指出,感谢实验内容,阉割版通讯录程序(没注册导致功能遭到限制)具体限制如下:每个工作组只允许添加4个联系人并且未注册版只允许有3个组除此之外它还一直提示我们未注册,简直是赤裸裸的嘲讽…哈哈这样的程序大大的限制了我们。作为Demo来Crash是个不错的例子,因为简单依旧是我们的OD:运行程序,F9运行,正常的操作,直到我们...
2019-03-20 20:03:21 706
原创 逆向破解--除去软件nag窗口
作者是名新手,能力有限,文章中如果有和不正确的地方,希望各位前辈指出本文仅作为学习的记录,做分享…我们有时候会用非注册软件,然后软件提供者希望更多的人注册他的软件,因此烦人的nag窗口出现了,不堪忍受的人回去注册…本文的程序很简单,很容易就去除了,可以说水文了,不过还是挺详细的,会额外多点零碎的知识点首先运行下程序…和是第一个nag窗口…然后进入程序:当我们推出程序时:再一...
2019-03-20 16:45:59 1360
原创 逆向学习:破解一个小程序
笔者是个新手小白,能力有限,如果文章有所不当之处,还请各位前辈批正指出,感谢程序下载地址: 点我 提取码: h4vi运行程序,这里提示我们需要一个密钥文件先进行爆破,丢进OD分析:这里我们可以从注释得知我们的密钥文件名字为"Keyfile.dat",可以猜想,程序的算法比对的是从这个文件读出密钥,运用设计好的算法,校验合法性…看到上面组合条件跳转,就该注意了…到这里正常执...
2019-03-20 15:00:57 12858 4
原创 Crack看雪论坛加解密的一个破解案例程序
新手能力有限,文章有什么错误还请各位前辈批正,感激不尽~运行程序,了解下程序的大概流程:程序要求输入用户名于序列号,点击check,基于Windows的消息机制,一般都从一些API入手,读取输入的内容然后执行下一步,因此我们可以以API作为切入点:在OD中,我们可以ctrl+G检索要跟随的API表达式,读取内容一般是:GetdlgItemTest(A/W)和GetWindowsTest(A...
2019-03-19 21:59:27 1883
原创 读书笔记5:0day安全:软件漏洞分析技术
对于上个实验出现的指令变动的情况,虽说可以通过抬高栈顶保护shellcode解决,不过招式不怕多嘛,这次的实验我们使用另外一个套路…套路的一些简要介绍:漏洞点位于某个动态链接库,且程序运行过程中被动态装载,此时栈中情况将会是变化的,也就是说之前从调试器中直接抄出来的shellcode起始地址下次就变了。因此,要编写出比较通用的shellcode就必须找到一个让程序自动定位到shellcode...
2019-03-17 16:33:58 612
原创 读书笔记4:0day安全:软件漏洞分析技术
实验内容:像进程中植入代码这节中,依旧抛出原文:”上节实验中,我们让函数返回main函数的验证通过分支的指令。试想下,如果我们在buffer里面包含我们自己想要执行的代码,然后通过返回地址让程序跳转到系统战力执行,我们岂不是可以让进程取执行本来没有的代码,直接去做其他事情了!“不得不说,结合书中示意图,真的很简洁易懂…本次实验目的,我们准备向password.txt文件址入二进制的机器码,...
2019-03-17 12:33:02 571
原创 读书笔记3:0day安全:软件漏洞分析技术
引用书的原话:”用键盘输入字符的ASCII表示方位有限,很多值(如0x11、0x12等符号)无法直接用键盘输入,所以我们把实验的代码做了下改动,将程序的输入改由文件读取出字符串“源码贴出:#include "stdio.h"#include "string.h"#include "stdlib.h"#define PASSWORD "1234567"i
2019-03-16 14:22:21 245
原创 读书笔记2:0day安全:软件漏洞分析技术
经过上个笔记的学习,我们了解了调用verify_password(char * password)时栈的情况:(注不了解函数调用方式的建议先找文章了解关键字:call的调用方式)我们都知道,执行完verify_password(char * password)是call指令调用是还会把它的下条指令地址入栈,用于调用完之后返回上层函数继续执行程序指令:其实大致方法还是跟修改临近变量的方法一样的...
2019-03-16 13:50:49 209
原创 读书笔记:0day安全:软件漏洞分析技术
实验2.2修改临近变量:#include "stdafx.h"#include "stdio.h"#include "string.h"#define PASSWORD "1234567"int verify_password(char *password){ int authenticated; char buffer[8]; //这里声明的变量在后续...
2019-03-16 13:18:06 803 2
原创 scanf汇编的实现过程
出于好奇,探究下scanf汇编怎么工作的,练习下思路。// func_scanf.cpp : Defines the entry point for the console application.//#include "stdafx.h"int main(int argc, char* argv[]){ char password[1024]; printf("pl...
2019-03-14 22:26:30 4884
原创 一个简单程序,从汇编初识栈溢出漏洞
阅读本文需要C++编程基础以及汇编知识,废话不多说,进入正文// StackOverFloat.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "string.h"#include "stdio.h"#include "windows.h"int tes...
2019-03-14 15:23:21 874
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人