PHP代码审计入门-XSS漏洞代码入门分析

0x00  写在前面

从零学习php,最终目的实现代码审计入门,软件采用sublime text,环境使用phpstudy搭建,数据库是navicat,需要有基本的前端基础、简单的php+mysql后端基础、渗透知识和漏洞原理,文章跟随流沙前辈学习记录,看看曾经遥不可及的代码审计能不能慢慢啃下来。

本章为代码审计入门学习第二篇,研究XSS漏洞代码分析。

0x01  存储型XSS漏洞代码分析

常用的XSS漏洞类型

个人实际渗透测试过程基本就使用两种,反射和存储;

反射型,一次性攻击,危害低,仅对当前访问页面有效,常出现搜索框

存储型(存在组合漏洞风险),危害相对较高,交互数据库,常出现在留言板

测试环境已搭建完成,为留言板发布信息部分;首先展示经典的XSS弹窗。

PHP代码审计入门-XSS漏洞代码入门分析_第1张图片

进入到发布信息页面,代码分析完成,跟进到send_message.html页面

PHP代码审计入门-XSS漏洞代码入门分析_第2张图片

发现是一个form表单,采用post提交用户输入内容,跟进到comment.php

PHP代码审计入门-XSS漏洞代码入门分析_第3张图片

comment.php发现对于用户输入的内容并没有做过滤

PHP代码审计入门-XSS漏洞代码入门分析_第4张图片

这里使用的加固方法,是使用htmlentities()函数,函数作用是将字符转换为html实体编码,在一定程度上能实现对XSS的防御

 
  

访问页面进行测试,发现被实体编码,反射型基本相似。

PHP代码审计入门-XSS漏洞代码入门分析_第5张图片

0x02 DOM型XSS漏洞分析

个人技术不高,之前虽然学过但是DOM型XSS在渗透测试中也不使用。这里又以学习目的看了看DOM型漏洞的产生原理。然后发现要想实际挖这个洞是要审计JS代码的,那对于JS要求又提高一个档次。

这里仅把代码贴出来,不懂就不误人子弟了。

PHP代码审计入门-XSS漏洞代码入门分析_第6张图片0x03  总结

今日代码学习较为简单,馒头还得一口一口吃,慢慢来吧。

你可能感兴趣的:(代码审计,信息安全,1024程序员节,php,网络安全,xss)