《小白WEB安全入门》03. 漏洞篇
@
本系列文章只叙述一些超级基础理论知识,极少有实践部分
本文涉及到的语言需自行掌握
SQL注入和简单绕过原理
什么是SQL
结构化查询语言 (Structured Query Language)简称SQL
SQL使我们有能力访问数据库
什么是SQL注入
用户提交的数据可以被数据库解析执行
XSS漏洞原理
什么是XSS
XSS(Cross Site Script),跨站脚本攻击
网页内嵌入HTML,CSS,JS代码
XSS分类
反射型:前端 -> 后端 -> 前端
存储型:前端 -> 后端 -> 数据库 -> 前端
DOM型:前端
NOSQL注入
什么是NOSQL
NOSQL,指的是非关系型的数据库。NOSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称。
NOSQL用于超大规模数据的存储。
CSRF原理
什么是CSRF
CSRF(Cross Site Request Forgery),跨站请求伪造。
攻击者盗用了你的身份,以你的名义发送恶意请求。
网络摄像头入侵原理
什么是网络摄像头
网络摄像头简称WEBCAM,英文全称为WEB CAMERA,是一种结合传统摄像机与网络技术所产生的新一代摄像机。
如何挖掘
查找活跃IP
端口扫描
指纹筛选
暴力破解
字典破解
怎么挖掘
钟馗之眼
傻蛋
文件包含漏洞原理
文件包含,是一个功能。在各种开发语言中都提供了内置的文件包含函数,其可以使开发人员在一个代码文件中直接包含(引入)另外一个代码文件。
什么是文件包含漏洞
本地文件包含
远程文件包含
文件包含漏洞的成因:
大多数情况下,文件包含函数中包含的代码文件是固定的,因此也不会出现安全问题。
但是,有些时候,文件包含的代码文件被写成了一个变量,且这个变量可以由前端用户传进来,这种情况下,如果没有做足够的安全考虑,则可能会引发文件包含漏洞。
代码审计原理
什么是代码审计
顾名思义就是检查源代码中的安全缺陷,检查程序源代码是否存在安全隐患,或者有编码不规范的地方,通过自动化工具或者人工审查的方式,对程序源代码逐条进行检查和分析,发现这些源代码缺陷引发的安全漏洞,并提供代码修订措施和建议
应该怎么学
熟悉程序语言
熟悉代码风险操作
熟悉设计模式
SSRF漏洞原理
SSRF(Server-Side Request Forgery),服务器端请求伪造。是一种由攻击者构造攻击链传给服务器,服务端执行并发起请求造成安全问题的漏洞,一般用来在外网探测或攻击内网服务。
XXE漏洞原理
什么是XML、DTD
什么是XML:
- XML 指可扩展标记语言(Extensible Markup Language)
- XML 是一种标记语言,类似 HTML
- XML 的设计宗旨是传输数据,而非显示数据
- XML 标签没有被预定义。您需要自行定义标签。
- XML 被设计为具有自我描述性。
- XML 是 W3C 的推荐标准
XML语言的作用:
- 存:特殊的文件,如手机中单机游戏的等级,装备等等。这些数据若是存放在数据库,就会因为数据库太大,普通文件太慢,所以采用xml文件保存软件中的数据。
- 传:在网络上传递数据
什么是DTD:
- DTD,Document Type Definition,文档类型定义
- DTD用于约束xml的文档格式,保证xml是一个有效的xml
- DTD 包括内部DTD和外部DTD
什么是XXE漏洞
XXE漏洞全称XML External Entity Injection即xml外部实体注入漏洞,XXE漏洞发生在应用程序解析XML输入时,没有禁止外部实体的加载,导致可加载恶意外部文件,造成文件读取、命令执行、内网端口扫描、攻击内网网站、发起dos攻击等危害
反序列化漏洞原理
什么是序列化
- 对象转换成字符串
- 持久保存
- 网络传输
漏洞原理总结
信息泄露
- 敏感信息
- /index.php?f=php://filter/convert.base64-encode/resource=index.php
- /index.php?f=file://D://www/html/about.php
- 账号密码
- 网站源码
- 数据库备份
命令执行
<?php
system($_GET['cmd']);
?>
逻辑漏洞(越权)
例如:
- WEB商店:
- 买1朵玫瑰:10¥
- 买100朵玫瑰:90¥
- 买-1朵玫瑰:?¥
文件上传
绕过:
- 前端校验
- 后端校验
文件后缀
文件内容
自定义规则
路由器(AP)漏洞
- WEB
- Linux
FUZZ模糊测试
什么是黑盒测试:
黑盒测试法也称功能测试或数据驱动测试。
它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用。
在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数锯而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。
什么是模糊测试:
模糊测试是黑盒测试技术之一。
模糊测试是一种自动或半自动的测试技术,常被用来发现软件/操作系统/网络的代码中的错误和安全性问题,其中用于输入随机的数据和不合法的数据被称为“FUZZ”。
《小白WEB安全入门》03. 漏洞篇的更多相关文章
- 后端小白的VUE入门笔记, 进阶篇
使用 vue-cli( 脚手架) 搭建项目 基于vue-cli 创建一个模板项目 通过 npm root -g 可以查看vue全局安装目录,进而知道自己有没有安装vue-cli 如果没有安装的话,使用 ...
- 【Web安全入门】三个技巧教你玩转XSS漏洞
XSS漏洞是Web应用程序中最常见的漏洞之一,想要入门Web安全的小伙伴,这个知识点是必学的. i春秋官网中有很多关于XSS漏洞的课程,新手小白可以去官网看课学习. 学习地址:https://www. ...
- Web API 入门指南 - 闲话安全
Web API入门指南有些朋友回复问了些安全方面的问题,安全方面可以写的东西实在太多了,这里尽量围绕着Web API的安全性来展开,介绍一些安全的基本概念,常见安全隐患.相关的防御技巧以及Web AP ...
- Node.js Web 开发框架大全《路由篇》
这篇文章与大家分享优秀的 Node.js 路由(Routers)模块.Node 是一个服务器端 JavaScript 解释器,它将改变服务器应该如何工作的概念.它的目标是帮助程序员构建高度可伸缩的应用 ...
- Node.js Web 开发框架大全《中间件篇》
这篇文章与大家分享优秀的 Node.js 中间件模块.Node 是一个服务器端 JavaScript 解释器,它将改变服务器应该如何工作的概念.它的目标是帮助程序员构建高度可伸缩的应用程序,编写能够处 ...
- 转载-Web API 入门
An Introduction to ASP.NET Web API 目前感觉最好的Web API入门教程 HTTP状态码 Web API 强势入门指南 Install Mongodb Getting ...
- 在MyEclipse下创建Java Web项目 入门(图文并茂)经典教程
http://jijiaa12345.iteye.com/blog/1739754 在MyEclipse下创建Java Web项目 入门(图文并茂)经典教程 本文是一篇在Myeclipse下构建Jav ...
- Web API入门指南(安全)转
安全检测的工具站点:https://www.owasp.org/index.php/Category:Vulnerability_Scanning_Tools Web API入门指南有些朋友回复问了些 ...
- Web API 入门指南
Web API 入门指南 - 闲话安全2013-09-21 18:56 by 微软互联网开发支持, 231 阅读, 3 评论, 收藏, 编辑 Web API入门指南有些朋友回复问了些安全方面的问题,安 ...
- Web开发入门学习笔记
公司web项目终于要启动了,本以为django学习可以在实战中进行,结果最终使用了Drupal框架,好吧,那我们就PHP走起,买了本<细说PHP>,先跟着过一遍Web开发入门. HTTP协 ...
随机推荐
- Django4全栈进阶之路8 createsuperuser创建超级管理员账号
在 Django 4 中,可以使用 createsuperuser 命令来创建超级管理员账号.超级管理员拥有管理后台的所有权限,包括创建.编辑和删除用户.组.权限等操作. 下面是创建超级管理员账号的步 ...
- Python-3.10手动配置环境变量
- vue对vue-giant-tree进行节点操作
vue 项目中使用到了vue-giant-tree这个使用ztree封装的树形插件,在对其节点进行操作时遇到了无法向传统的jquery那样获取到ztreeObj:而导致了无法控制节点dom:浪费了许多 ...
- 记一次BootCDN被黑产挂马导致站点跳转博彩网站的问题
近期发现公司某些站点出现偶尔跳转博彩网站的现象,经过排查发现该现象为供应链投毒攻击,BootCDN上的静态资源无一例外均被污染, 当外站引入BootCDN的静态资源时,如果请求携带的Referer头为 ...
- 【PAT】1001 害死人不偿命的(3n+1)猜想(动态更新)
卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把 ( 砍掉一半.这样一直反复砍下去,最后一定在某一步得到 n=1.卡拉兹在 1950 年的世界 ...
- 让AI更好地服务于人类社会:如何确保其安全和透明度
目录 让AI更好地服务于人类社会:如何确保其安全和透明度 随着人工智能技术的不断发展和应用,人们越来越关注其安全和透明度.安全和透明度是人工智能发展的重要保障,能够保护人工智能系统免受恶意攻击和滥用, ...
- 【python基础】文件-初识文件
文本文件可存储的数据量是非常多的.每当需要分析或修改存储在文件中的信息时,首先就是读取文件到内存中,为此可以一次性读取文件的全部内容,也可以以每次一行的方式逐步读取. 1.读取文件 1.1读取整个文件 ...
- sql server注入rce实践
背景:在漏洞挖掘中,合理的利用sql注入,可以把注入转换成rce,使一个高危漏洞变成严重漏洞.在红蓝对抗中,利用注入rce,实现内网横向移动.笔者基于漏洞挖掘和红蓝对抗上遇到的sql server注入 ...
- Open LLM 排行榜近况
Open LLM 排行榜是 Hugging Face 设立的一个用于评测开放大语言模型的公开榜单.最近,随着 Falcon 的发布并在 Open LLM 排行榜 上疯狂屠榜,围绕这个榜单在推特上掀起了 ...
- 【阅读笔记】提升example-based SISR七个技巧
论文信息 [Seven ways to improve example-based single image super resolution]-Radu Timofte, 2016, CVPR 论文 ...