安全学习
样本分析,二进制等安全学习
0F34
二树妹妹
展开
-
COM组件一些用法&用途
0x1.主机程序通过相关调用com组件代码,调用IE去访问网络特点: 网络请求的父进程是iexplore.exe,而不是自身#include<stdio.h>#include<windows.h>#include<exdisp.h>int main(){ if (SUCCEEDED(OleInitialize(NULL)))//在当前模块上先初...原创 2019-11-13 17:35:39 · 819 阅读 · 0 评论 -
栈溢出原理与实现
栈结构:1.方向:高地址(栈底)->低地址(栈顶)2.加载完成pe后,系统会为这个pe分配一个栈,这个栈用于 实现(类似C)高级语言中函数的调用。3.(2)所说的分配的栈是系统自动维护,并且push pop等平衡细节都是透明的。一般来说只有在使用汇编代码的时候,心会和它直接打交道。函数调用与栈#include<stdio.h>void fuc_B(){ pr...原创 2019-10-23 09:41:09 · 964 阅读 · 0 评论 -
GS编译选项是什么?为什么?怎么办?简单理解(security_cookie)
GS是什么GS编译选项出现的目的,大部分原因是为了防止下面的情况而出由于堆栈缓冲区溢出,导致代码的eip结构被更改,执行了未知的代码。在微软的安全开发周期模型中,专门在安全编码实践中推荐:对于微软的最新C/C++编译器,使用GS选项编译选项,加入检测函数堆栈缓存溢出错误额外代码。为什么是GSGS怎么就能这么做,为什么是GS。讲解原理这里需要一些对函数调用过程中堆栈变化的一些理解。就不...原创 2019-10-19 16:40:06 · 1735 阅读 · 1 评论 -
编写shellcode并注入至进程
shellcode维基百科:在计算机安全中,shellcode是一小段代码,可以用于软件漏洞利用的载荷。被称为“shellcode”是因为它通常启动一个命令终端,攻击者可以通过这个终端控制受害的计算机,但是所有执行类似任务的代码片段都可以称作shellcode。……Shellcode通常是以机器码形式编写的。去掉修饰词,shellcode就是一段机器码。关于shellcode如何...原创 2019-10-18 10:42:03 · 4235 阅读 · 3 评论 -
CreateProcessAsUser之创建进程时指定父进程与UAC(UAC原理)
UACUAC(user account control),这里科普下UAC的功能,其实UAC就是大家常见的安装软件或者启动程序的时候的出现的全屏变暗的一个提示框,正常的UAC级别下,会检测程序是否有数字签名(可识别程序),以及他的数字签名是否合法,这对于一部分低端的木马具有提醒作用,所以除非特殊情况,不要乱对UCA降权。UAC运行原理:在Windows Vista操作系统中。用户账户主要...原创 2019-10-15 20:22:27 · 12261 阅读 · 3 评论 -
创建傀儡进程
折腾好久,总算完成了自己第一次的傀儡进程编写。效果:使当前进程创建一个子进程(同名)掏空子进程,注入任何自己编写好的其他exe。注意点1.用来创建傀儡进程的父进程程序 需要是32位程序,因为编码的程序本身就是win32控制台程序2.注入到进程中的程序32位,64位都行3.pe结构取值时一定一定要留心是否需要加基址。4.注意区分CUI程序和GUI程序,如果代码编写的是32位控制台程序,...原创 2019-10-14 21:35:50 · 946 阅读 · 12 评论 -
PE结构图,非常完整,谢谢原作者
从网上转过来的一张PE结构图,非常完整,谢谢原作者! 放大网页可以看清!!!转载 2019-08-11 11:49:26 · 1706 阅读 · 0 评论