Web安全之XSS漏洞专题和Web安全之命令执行漏洞专题
本次直播学习内容为
01 XSS漏洞基础
02 XSS平台使用
03命令执行漏洞
04 命令执行文件读取
主要就是学习XSS漏洞和命令执行漏洞
首先让我们了解了javascript(看图了解真相)
基本语法:
1、五种基本基础类型:
Boolean,Number,String,Undefine,Null 和对象类型Object
2、分号:
3、代码块:
4、注释和变量:
5、JS函数:
6、JS运算符:
7、JS语句:
以上就是基本介绍了,简而言之就是通过javascript来操控html元素,改变html内容,属性,样式,以及输入输出操作
JS可以创建三种框:警告框alert(),确认框confirm(),提示框prompt。
就这样,主要重点内容还是XSS的内容
什么是XSS?
XSS的基本原理
看上图例子可知这就造成了通过输入代码,并且成功进入web里被执行,达到攻击目的
这就造成了XSS漏洞危害
XSS主要漏洞危害:
例子:
那么有哪些类型的XSS漏洞?
1、反射性XSS漏洞:
又称为非存储型漏洞,通过URL参数传入恶意语句,从而进行攻击
2、存储型XSS漏洞:
存储型XSS,也叫持久化XSS,代码是存储在服务器中的,如 在个人信息或发表文章等地方,加入代码,如果没有过滤或过滤 不严,那么这些代码将储存到服务器中,用户访问该页面的时候 触发代码执行。这种XSS比较危险,容易造成蠕虫,盗窃cookie 等。
要成为存储型XSS攻击点,需满足以下两点: 1.有数据提交点以及回显点 2.其中处理过程无危险字符转义处理或可绕过转义处理
拿刚才的新浪微博里子例子来说,通过用户点击浏览来达成攻击,再运行js脚本,发送微博链接等操作进行扩散
3、DOM型XSS漏洞:
简单的说,通过修改页面的DOM节点形成的XSS,就是DOM based XSS。 这里就要提及JS的极为重要的一个功能了,就是可以修改DOM节点。 那么如果我们将反射型XSS的Payload用于修改DOM节点,那么可以修 改页面任意元素,多用于钓鱼。
与之前相同,需要满足以下两个条件 1.有数据提交点以及回显点 2.其中处理过程无危险字符转义处理或可绕过转义处理
DOM式XSS触发方式与反射式XSS漏洞相同,反射式XSS的payload输出在HTML页面内,而DOM式 payload并不在html页面内输出,但都需要用户主动点击才能触发,所以需要攻击者主动将包含 payload的URL发送给用户点击,用户在打开页面后运行恶意代码,黑客完成攻击
XSS平台使用:
这里就简单介绍下
命令执行漏洞:
在Web程序中,Web引用有时需要调用一些执行系统命令的函数,如PHP中的system、exec、 shell_exec、passthru、popen、proc_popen等,当用户或者攻击者能控制这些参数时,就可以将恶意 的系统命令拼接到正常命令中,从而造成命令执行攻击,这就是命令执行漏洞
命令执行文件读取
分隔符:
//';'是无论前面是否是正确语句都会执行后面的语句 下面图中解释的不是很全
主要看Linux的图解
Linux花式读取文件:
修复方法:
总结:
主要是了解XSS漏洞和命令执行漏洞
XSS的常见三种漏洞:反射型(非存储型),存储型,DOM型
个人理解就是反射型可以通过URL输入的恶意代码带入进行执行,存储型就是将代码存入到服务器中,所以叫存储型,它会像蠕虫一样停留在那里,不停地通过请求来响应,达成扩散,至于DOM型就是利用页面元素来欺骗浏览者,达成钓鱼目的,就比如攻击者修改页面元素,制造了一个假的登录界面,就可以获取用户的登录信息
典型的就是钓鱼WIFI了。
至于命令执行文件读取,不是特别能理解吧,可能是当时老师当时那个最后演示whomi没有成功,费了挺大时间的,没有过于理解内涵,个人理解就是通过一些命令执行代码
将目标文件的写入执行操作