【总结】网安术语EXP、POC、Shellcode、Payload简单说明

2024-04-09 20:44

本文主要是介绍【总结】网安术语EXP、POC、Shellcode、Payload简单说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【总结】网安术语EXP、POC、Shellcode、Payload简单说明

  • 备注
  • 一、定义
  • 二、关系

备注

2024/04/09 星期二
最近发现很多人都分不清这几个概念,网上搜出来的说明也非常复杂不是简简单单就能看懂的于是用我理解的最简单的方式解释一下这几个概念

一、定义

在网安中我们关注一般都是安全漏洞(Vulnerability),于是和漏洞相关的就有这么几个概念:
EXP(Exploit):漏洞利用,一般是完整的漏洞利用代码或程序
POC(Proof of Concept):漏洞概念验证,一般用于证明漏洞存在,不具有攻击性
Shellcode:获取shell的代码,获取shell是大部分攻击的最终目的
Payload:攻击载荷,一系列具有完整框架性的攻击代码

二、关系

有了以上简明扼要的定义之后,我们就可以关注这几个概念之间的关系了,但是为了理解简单,我们需要先把漏洞分为两种:能拿到shell的漏洞如:命令注入、缓冲区溢出等,和不能拿到shell的漏洞如:信息泄露、拒绝服务等
对于不能拿到shell的漏洞,也就不存在shellcode的概念,exp、poc、payload的行为也非常相似,例如一个信息泄露漏洞,poc可能是证明可以泄露一条信息,payload是编写出来用于获取信息的框架代码,exp是完整的获取泄露的全部有效信息的程序
而对于绝大多数情况安全人员更加关注的是能拿到shell的漏洞,也是这几个术语的常规语境。例如一个栈溢出漏洞,poc是让被攻击程序执行了一段代码证明漏洞存在,shellcode是你基于poc编写的当被攻击程序执行时会启动shell的代码,payload是当shell启动后会继续按照预设的攻击框架进行正向或反向的远程连接到攻击者的服务器并且隐匿进程、隐藏流量或有更强攻击性的代码,而exp是一个按照上述流程编写的完整的攻击程序,任何人运行后都可以直接攻击某个具有该漏洞的主机。
因此这四个概念可以简单理解为如下包含关系:关系图

这篇关于【总结】网安术语EXP、POC、Shellcode、Payload简单说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/889164

相关文章

Windows Docker端口占用错误及解决方案总结

《WindowsDocker端口占用错误及解决方案总结》在Windows环境下使用Docker容器时,端口占用错误是开发和运维中常见且棘手的问题,本文将深入剖析该问题的成因,介绍如何通过查看端口分配... 目录引言Windows docker 端口占用错误及解决方案汇总端口冲突形成原因解析诊断当前端口情况解

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则

Nginx指令add_header和proxy_set_header的区别及说明

《Nginx指令add_header和proxy_set_header的区别及说明》:本文主要介绍Nginx指令add_header和proxy_set_header的区别及说明,具有很好的参考价... 目录Nginx指令add_header和proxy_set_header区别如何理解反向代理?proxy

java常见报错及解决方案总结

《java常见报错及解决方案总结》:本文主要介绍Java编程中常见错误类型及示例,包括语法错误、空指针异常、数组下标越界、类型转换异常、文件未找到异常、除以零异常、非法线程操作异常、方法未定义异常... 目录1. 语法错误 (Syntax Errors)示例 1:解决方案:2. 空指针异常 (NullPoi

如何使用Python实现一个简单的window任务管理器

《如何使用Python实现一个简单的window任务管理器》这篇文章主要为大家详细介绍了如何使用Python实现一个简单的window任务管理器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 任务管理器效果图完整代码import tkinter as tkfrom tkinter i

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程

使用EasyExcel实现简单的Excel表格解析操作

《使用EasyExcel实现简单的Excel表格解析操作》:本文主要介绍如何使用EasyExcel完成简单的表格解析操作,同时实现了大量数据情况下数据的分次批量入库,并记录每条数据入库的状态,感兴... 目录前言固定模板及表数据格式的解析实现Excel模板内容对应的实体类实现AnalysisEventLis