ICode9

精准搜索请尝试: 精确搜索
  • 老码识途1之函数调用和局部变量2019-10-27 16:00:33

    无论在编程中,还是在面试中,都会遇见调用函数这个东东,但是,要是让你说函数是怎么调用的,你能回答上来吗,接下来就让我们一起探索函数如何在汇编层次上实现调用的 在接下来,我们将有几个问题要去解决 函数调用如何传递参数的 函数调用如何查找调用函数的地址的 函数内部调用过程

  • Windows系统调用中API的3环部分(依据分析重写ReadProcessMemory函数)2019-10-19 18:03:41

    Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html Windows系统调用中API的3环部分   一、R3环API分析的重要性 Windows所提供给R3环的API,实质就是对操作系统接口的封装,其实现部分都是在R0实现的。 很多恶意程序会利用钩子来钩取这些API,从而达到截取

  • 反汇编角度判断函数有几个参数,分别是什么2019-10-03 18:52:40

    1 int g_r ; 2 3 void __cdecl Function1(int x,int y,int z) 4 { 5 g_r = x+y+z; 6 } 7 void __stdcall Function2(int x,int y,int z) 8 {

  • 用汇编的眼光看C++(之指针1)2019-09-25 16:03:05

    原文链接:https://blog.csdn.net/feixiaoxing/article/details/6757851  【 声明:版权所有,欢迎转载,请勿用于商业用途。  联系信箱:feixiaoxing @163.com】       指针是我们在C/C++中经常遇到的一种数据类型。指针用的好,可以提高代码的可读性;

  • 2019-2020-1 20199311《Linux内核原理与分析》第二周作业2019-09-22 14:00:10

    1. 问题描述 通过这一周的学习,我们初步了解了存储计算机工作模型以及基本的汇编语言,现在要分析一个C语言小程序汇编出来的汇编代码如何在存储计算机工作模型上一步步地执行。 2. 解决步骤 2.1 计算机工作原理介绍 计算机的基本原理主要分为存储程序和程序控制,预先要把控制计算机如

  • writeUp-攻防世界-reverse-Hello,CTF2019-09-22 11:57:42

    先打开这个exe文件。    用PEID查壳。 等等……没有壳?!     可以看到这个程序是C++写的。 拖到ida里查看。 搜索“please input your serial:”    跳过去看看 看到这个东西在_main函数里面。    F5看到伪码: 1 int __cdecl main(int argc, const char **argv, const

  • 2019-2020-1 20199310《Linux内核原理与分析》第二周作业2019-09-21 20:01:34

    1.问题描述 众所周知,计算机是20世纪最伟大的发明之一,计算机是如何工作的呢?本文主要通过计算机的组成结构和工作原理,以及汇编代码工作过程来进行详细叙述。 2.解决过程 3.1 冯·诺依曼体系结构 一般来讲,现代计算机结构依据冯·诺依曼结构体系,该结构也成普林斯顿结构,是一种将程序指

  • 栈帧ebp,esp详解2019-09-17 12:42:37

    原文链接:https://blog.csdn.net/u011822516/article/details/20001765 栈帧%ebp,%esp详解   分类专栏: 汇编 首先应该明白,栈是从高地址向低地址延伸的。每个函数的每次调用,都有它自己独立的一个栈帧,这个栈帧中维持着所需要的各种信息。寄存器ebp指向当

  • 针对JCC指令练习的堆栈图2019-09-10 23:56:42

    堆栈图,主要目的就是练习一下JCC指令的熟练度,供参考 版权声明:本文为博主原创文章,转载请附上原文出处链接和本声明。2019-09-10,23:41:41。作者By-----溺心与沉浮----博客园 堆栈完整代码: 1 0040118E |. 6A 09 PUSH 9 2 00401190 |. 6A 0C PUSH 0C 3 00401192

  • Office 2003 sp3(CVE-2012-0158)漏洞分析报告2019-09-07 11:05:25

    文章目录Office 2003 sp3(CVE-2012-0158)漏洞分析报告1.漏洞背景2.漏洞成因2.1 触发漏洞2.2 定位漏洞模块2.3 定位漏洞函数2.4 分析漏洞成因2.5 总结3.利用过程3.1 分析和设计利用漏洞的ShellCode的结构3.2 寻找跳板指令jmp esp3.3 编写ShellCode,注入ShellCode4.构造Exp5.结

  • 攻防世界 reverse 进阶 easyre-1532019-09-03 11:56:28

    easyre-153 查壳:   upx壳  脱壳:   1 int __cdecl main(int argc, const char **argv, const char **envp) 2 { 3 int pipedes[2]; // [esp+18h] [ebp-38h] 4 __pid_t v5; // [esp+20h] [ebp-30h] 5 int v6; // [esp+24h] [ebp-2Ch] 6 char buf; // [esp+2Eh] [ebp-

  • 逆向破解之160个CrackMe —— 0222019-09-01 15:55:08

    CrackMe —— 022 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 cracker,想挑战一下其它 cracker 的破解实力,也

  • C函数调用过程原理及函数栈帧分析(转)2019-09-01 09:01:36

    在x86的计算机系统中,内存空间中的栈主要用于保存函数的参数,返回值,返回地址,本地变量等。一切的函数调用都要将不同的数据、地址压入或者弹出栈。因此,为了更好地理解函数的调用,我们需要先来看看栈是怎么工作的。 栈是什么? 简单来说,栈是一种LIFO形式的数据结构,所有的数据都是后进先出

  • 逆向破解之160个CrackMe —— 0212019-08-30 14:53:28

    CrackMe —— 021 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 cracker,想挑战一下其它 cracker 的破解实力,也

  • FirstPayload2019-08-14 16:05:37

    FirstPayload// FirstPayload.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//​#include "pch.h"#include <iostream>​int main(){ __asm { SUB ESP,0x20 // 开辟一段栈空间,增加健壮性 push ebp mov ebp,esp sub esp,0x10 JMP tag_Shellcode

  • __stdcall 和 __cdecl 的区别2019-08-09 20:41:14

    原文链接:http://www.cnblogs.com/yewei/archive/2013/03/03/2941315.html 1. __cdecl __cdecl 是C Declaration的缩写(declaration,声明),表示C语言默认的函数调用方法:所有参数从右到左依次入栈,由调用者负责把参数压入栈,最后也是由调用者负责清除栈的内容,一

  • 编译器C-Free V352注册算法分析2019-08-07 18:00:59

    原文链接:http://www.cnblogs.com/F4ncy/archive/2005/09/19/239976.html 编译器C-Free V352注册算法分析 作者:prince ASPack 2.12 脱壳很简单,ASPackDie也可以轻松对付。无自校验,脱壳后可直接运行。注册情况:机器码给出,输入用户名prince和序列号8764321,确

  • 适合新手的160个creakme(一)2019-08-03 22:57:14

    先跑一下 直接使用这个字符串去check,发现提示信息有关键字符串 CODE:0042FB80 00000021 C Sorry , The serial is incorect ! 找到这个字符串的引用,有两个 跟下去发现这两个字符串都在一个函数中,最下面的3个框中左右都是错误,中间是对的,所以核心就在最上层和中间的这段代码 下

  • LINUX - 堆栈2019-08-03 12:04:07

                堆栈模型:       函数调用:   EBP:ESP EBP当前调用函数的栈底; ESP当前调用函数的栈顶;     参考及图: https://blog.csdn.net/hoi0714/article/details/7658100

  • Aspack壳代码分析2019-08-02 16:55:57

    ​00417000    90              NOP00417001 >  60              PUSHAD00417002    E8 03000000     CALL 00_aspac.0041700A                   ; 下一条是花指令 按100417007    90              NOP00

  • 脱壳12019-07-30 14:57:10

    概述 脱壳是一项综合技术,结合PE文件格式、汇编指令的分析,调试加密的程序并将其还 原的一个过程。 壳一般分为两种,加密壳和压缩壳,里面所使用的技术有,压缩算法、对代码加密、 对IAT加密、对资源加密。 我们从简单入手­压缩壳 关于压缩算法 有损压缩 一个像素点:RGB 红绿蓝 一个图

  • linux-boot-arch_x86_boot_compressed_head_322019-07-21 11:07:58

    原文链接:http://www.cnblogs.com/cybertitan/archive/2012/10/10/2719020.html        /*   *  linux/boot/head.S   *   *  Copyright (C) 1991, 1992, 1993  Linus Torvalds   */      /*   *  head.S contains the

  • 分析函数调用的汇编指令2019-07-20 11:05:53

    原文链接:http://www.cnblogs.com/zhy2002/archive/2008/12/10/1351796.html 同样一段c++代码生成的汇编指令可能会不一样。有多种原因,例如编译器、调用约定或者底层平台。 今天要分析的是cdecl在x86机器上用visual c++ 2005上的编译结果。 首先需要设置

  • 函数调用堆栈的过程2019-07-18 21:08:51

    分析函数的调用过程,以一段代码为例: #include<stdio.h> int sum(int a,int b) { int tmp=0; tmp=a+b; return tmp; } int main() { int a=10; int b=20; int ret=0; ret=sum(a,b); printf("ret=%d\n",ret); return 0; } 反汇编如下所示:    解析后的反汇编:  

  • 初学者的静态分析挑战writeup42019-07-09 20:06:17

    题目来源至 https://www.malwaretech.com/beginner-malware-reversing-challenges 所有挑战都是在不使用调试器的情况下完成的,你的目标应该是能够在不运行exe的情况下完成每个挑战。 这些挑战利用与位置无关的代码来解密flag,弄清楚shellcode的作用并自己解密。 shellcode1

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有