自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 Idea快捷键和小技巧

Idea快捷键和小技巧自动导包和删包if条件语句快捷键需要布尔的变量比如flag flag.if 或者flag.elseFori 快速生成for循环.var 快速生成对象布尔变量.while快速生成while循环.sout快速输出.try快速生成try-catch代码块...

2022-03-23 16:12:26 394

原创 格式化字符串漏洞

格式化字符串漏洞​可变参数函数有些函数的参数是变化的,是不确定个数的,比如格式化字符函数中的printf,后面可以有n个参数如何使用这些可变参数printf的实现中采用了stdarg.h头文件中的宏定义。初始化va_list指针,它用来指向可变参数,初始化为第一个参数位置。在printf中,根据匹配的格式字符来决定自己的移动字节数,如%d就动4字节,%d就8字节,这样来找到下一个参数的位置隐藏的危险当匹配的格式字符串,交由用户输入,或者有部分用户输入,那格式字符多于实际传入参数的数目后,就

2021-02-02 20:25:23 368

原创 # Return to libc

Return to libc在典型的栈溢出攻击中,需要把shellcode放在栈内,这样遇到不可执行栈防护的时候就无法成功。这起源于我们对恶意代码有着自己的想法,想要自己编写一个恶意代码,然后将返回函数地址修改,但是能拿到rootshell,其实应该就大差不错的够了,而这样的功能的实现在动态链接库里有,如system函数这种老生常谈的不安全函数。如果我们能把返回地址修改为system函数所在地址,并且设法把参数成功传递,那我们就不需要自我编写恶意代码且担心栈的不可执行这是对不可执行栈的绕过,当然我们也

2021-02-01 20:10:50 284

原创 栈溢出

缓冲区溢出攻击程序的内存布局对于一个典型的C语言程序,内存由5个段组成,分别是代码段,数据段,堆,栈,bss段代码段:放可执行代码,通常只读数据段:已经初始化全局变量,静态变量BSS段:未初始化的全局变量和静态变量堆:用于动态内存分配栈:用于存放与函数调用相关的数据栈与函数调用栈的内存布局[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qwAsV2hd-1612085707431)(%E7%BC%93%E5%86%B2%E5%8C%BA%E6%BA%A2

2021-01-31 17:37:20 251 1

原创 环境变量相关的shellshock攻击

环境变量什么是环境变量环境变量是存储在进程中的一系列动态键值对,它们可以影响进程的行为。可以通过局部变量envp获取,只能在main函数中使用也可以用environ全局变量获取也可以调用getenv(var_name)来获取这个函数是在environ数组中搜索也可以使用putenv(),setenv()和unsetenv()来改变修改和删除环境变量进程获取环境变量的方式使用fork()子进程继承父进程的所有环境变量使用execve()第一个参数是新程序的路径第二个参数是数组传入新程序的

2021-01-12 16:55:36 536

原创 Set-Uid特权程序

特权程序存在的必要性很多特殊的敏感操作需要特权,但是操作系统往往不能提供足够的颗粒度,大部分时候操作系统只能达到文件层次的颗粒度而不能精准到文件中某段记录的修改权限。所以特权程序就因此诞生特权程序的类型守护进程和set-UID程序守护进程是以特权用户的身份如root运行的进程,当用户需要做一些特殊操作的时候可以请求他的帮助,在Windows中叫做服务而不是守护进程set-uid 他通过一个比特位的标记告诉操作系统自己是特权程序set-Uid机制在Unix操作系统中,一个进程有三个用户ID:真

2021-01-12 14:30:56 1081

空空如也

空空如也

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

TA关注的人

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