DVWA练习——CSRF漏洞原理
1.简介
CSRF(Cross-site request forgery,跨站请求伪造)通常是黑客利用已经登录的用户,诱使其访问或者登录某个早已构造好的恶意链接或者页面,然后在用户毫不知情的情况下,以用户的名义完成了非用户本意的非法操作。
这种攻击我们也被称为“One Click Attack“或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用行为。与XSS攻击相比,CSRF攻击往往不大流行(因此对其进行防范的资源也相当稀少)和难以防范。
2.同源策略
什么是同源策略
同源策略由Netscape公司于1995年引入浏览器。目前,所有的浏览器都实行这个策略。它的含义是指,A网页设置的cookie,B网页不能打开,除非这两个网页同源。所谓的同源指的是三个相同:
协议相同
域名相同
端口相同
同源策略的目的
为了保证用户信息的安全,防止恶意的网站窃取数据。
3.DVWA——CSRF漏洞学习
Low
将安全等级调为Low,查看Low级别的源码:
1234567891011121314151617181920212223242526272829< ...
session覆盖攻击原理与实验
实验使用session登陆的php demo源码进行测试,源码下载链接
使用前需要先将数据库文件cms.sql导入到cms数据库(没有就先创建一个),默认有两个账户:admin/123456,admin1/admin
session覆盖简介
session覆盖攻击是一种非常流行的针对session的攻击方式,攻击者通过截获正常用户在某个网站的session id,就可以模仿这个用户,实现下一步的攻击。通常会被用作恶意重置用户的密码。
session覆盖过程
使用浏览器访问我们的session源码网站目录,可以看到有账户、密码和密文的提交框
先使用admin账户登录,并输入密文cxk后登录
为了方便实验,在页面展示出了当前用户的session id
然后再打开另外一个浏览器,使用我们另外一个账号admin1登录,密文填写任意值
这里使用另外一个浏览器是因为,在我们登录账号的时候,由于session的原因,浏览器会保存我们当前账号的登陆状态,如果不退出浏览器或者退出账号,就一直处于当前账号的登陆状态,无法登录进其他账号
打开BurpSuite对admin1进行拦截,刷新页面, ...
DVWA练习——XSS漏洞原理
简介
XSS攻击(Cross Site Scripting,跨站脚本攻击)通常指恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。
XSS漏洞通常是通过php的输出函数将javascript代码输出到html页面中,通过用户本地浏览器执行的,所以xss漏洞关键就是寻找参数未过滤的输出函数
常见的输出函数有: echo、printf、print、print_r、sprintf、die、var-dump、var_export
XSS主要分为三类:存储型XSS、反射型XSS和DOM型XSS
DVWA——XSS原理学习[DVWA源码下载]
DVWA——存储型XSS
什么是存储型XSS
攻击者可以通过XSS漏洞将恶意代码上传或储存到漏洞服务器中,只要受害者浏览包含此恶意代码的页面就会执行恶意代码。这就意味着只要访问了这个页面的访客,都有可能会执行这段恶意脚本,因此储存型XSS的危害会更大。因为存储型XSS的代码存在于网页的代码中,可以说是永久型的。
存储型 XSS 一般出现在网站留言、评论、博客日志等交 ...
session、cookie和token的区别
session(会话)
session是用户使用web应用请求服务的时候,在服务器端生成的一次会话证明,这个证明会临时保存在服务器端,当用户离开网站或浏览器结束web访问的时候就会被销毁。
服务器为了区分当前向自己请求服务的是谁,给每个用户分发了一个唯一的“身份标识”(也就是sessionID),当用户使用客户端向服务端发送请求的时候,需要携带该sessionID才能正确请求到服务。
浏览器和服务器使用session进行交互的过程
cookie
cookie是在浏览器客户端存储的一种数据。cookie由服务器生成,发送给浏览器,浏览器把它以文件的形式保存在浏览器的某个目录中。在下一次请求同一网站的时候浏览器会把该cookie发送给服务器,由服务器使用用户名和口令对cookie进行验证。
cookie的请求流程
token(令牌)
token 也称作令牌,由uid+time+sign[+固定参数]加密后生成。
token 的认证方式类似于临时的证书签名, 并且是一种服务端无状态的认证方式。所谓无状态就是服
务端并不会保存身份认证相关的数据。
组成
uid: 用户唯一身份标识
ti ...
使用Metasploit复现永恒之蓝攻击
1.Metaspolit介绍
Metasploit是一个免费的、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。它本身附带数百个已知软件漏洞的专业级漏洞攻击工具,并保持着频繁更新。被安全社区冠以“可以黑掉整个宇宙”之名的强大渗透测试框架。
2.术语
渗透攻击(Exploit):指由攻击者或渗透测试者利用一个系统、应用或服务中的安全漏洞,所进行的攻击行为。
攻击载荷(Payload):是我们期望目标系统在被渗透攻击之后去执行的代码。
Shellcode:是在渗透攻击是作为攻击载荷运行的一组机器指令,通常用汇编语言编写。
模块(Module):指Metasploit框架中所使用的一段软件代码组件,可用于发起渗透攻击或执行某些辅助攻击动作。
监听器(Listener):是Metasploit中用来等待网络连接的组件。
3.Metasploit使用
永恒之蓝是2017年公布的一个网络攻击工具,它利用Windows系统的SMB漏洞获取系统的最高权限。微软也在同年发布了MS17-010补丁,修复了“永恒之蓝”攻击的系统漏洞。
在实验室的电脑上,通过使用 ...
御剑——Web后台目录扫描
御剑下载
使用御剑扫描器,可以扫描网站的敏感目录,包括网站后台等。其扫描原理就是爆破,即通过敏感目录的字典去匹配。
扫描线程自定义:用户可根据自身电脑的配置来设置调节扫描线程
集合DIR扫描 ASP ASPX PHP JSP MDB数据库 包含所有网站脚本路径扫描
默认探测200 (也就是扫描的网站真实存在的路径文件)
使用方法
打开软件在域名框输入要扫描的网站地址
在下面可以选择扫描线程以及扫描超时间,还有文件类型等
全部选择好以后就可以点击开始扫描了
等待扫描好以后在下面会出现扫描结果
扫描结果中左侧是扫描到的网站后台目录的地址,右边则是HTTP的响应码,通过访问这些地址可以找到网站后台的登录页面。
尝试访问扫描出来的/dede目录会看到网站后台的登录地址
除此之外,还可以直接访问robots.txt文件来查看被网站管理员禁止爬取的一些网站目录,尝试访问这些目录也会有新的发现。
AWVS漏洞扫描的使用过程
AWVS下载
测试用网站源文件:dedecms5.6.zip
1.构建测试网站
下载dedecms5.6.zip并解压在phpStudy的网站根目录中,并修改端口常规设置
在端口常规设置中奖网站目录设置为刚才解压的dedecms5.6,设置完成后点击应用保存
待服务重启后就可以使用浏览器直接访问127.0.0.1看到页面内容
2.使用AWVS进行扫描
打开AWVS后,会自动弹出来扫描向导,将本地创建的要扫描的127.0.0.1填入URL中
然后其他配置使用默认,一路点击下一步就可以开始扫描
扫描过程会显示扫描过程中获得的信息
等待一段时间后,就能看到扫描完成并可以点击上方的Report生成一份测试报告
可以看到软件扫描出很多潜在的高危和中危漏洞,漏洞具体信息可以在报告里查看
Webshell——一句话木马实操
本次课程需要用到的工具:phpStudy、蚁剑和中国菜刀
1.配置Web环境
打开phpStudy启动服务,使得界面的运行状态全部变成绿色,此时可以在浏览器使用127.0.0.1访问Web服务
2.创建木马文件
在phpStudy的界面点击其他选项菜单进入网站的根目录
在根目录中新建一个PHP的一句话木马文件,命名为hack.php,里面添加木马语句
1<?php @eval($_POST['aaa']);?>
保存后退出编辑即可
3.利用Webshell
1)使用HackBar插件
在浏览器中安装HackBar插件,按F12打开开发者工具,访问http://127.0.0.1/hack.php界面不会显示任何东西
然后点开开发者工具中的HackBar选项卡,将地址栏中的地址粘贴在下面,选中Post Data选项在下面填入aaa=system('ipconfig');,其中这里的aaa是上面在创建木马文件的时候POST里面的参数
填写完毕后点击Execution就可以通过木马执行服务器中的命令,就可以直接在Web页面看到命令执行后的结果
2) ...
Nmap的几种常见扫描方式
Nmap扫描原理:首先会发送ICMP数据包确定探测主机是否存在(存活扫描),再探测主机存在的端口
1.Intense scan(强扫描)
1nmap -T4 -A -v [ip_addr]
-T4:第4强度的扫描(同时扫描端口数的强度)
-A:探测目标的详细信息
-v:输出探测过程中的详细信息
2.Intense scan plus UDP(强扫描+UDP)
1nmap -sS -sU -T4 -A -v [ip_addr]
-sS:(send SYN)TCP SYN探测扫描
-sU:探测UDP
3.Intense scan, all TCP ports(强扫描全部TCP端口)
1nmap -p 1-65535 -T4 -A -v [ip_addr]
-p:探测的端口号
4.Intense scan, no ping
1nmap -T4 -A -v -Pn [ip_addr]
-Pn:扫描之前不ping远程主机(模拟成TCP连接探测主机是否存活)
5.Ping scan
1nmap -sn [ip_addr]
-sn:只探测存活(与上面的-Pn不能同时使用)
6.Quick scan( ...
BurpSuite的4种常用功能使用
BurpSuite下载
包拦截
1.设置代理
首先设置浏览器的网络代理为HTTP:127.0.0.1:8080
也可以下载使用Firefox的代理插件——SwitchyOmega对浏览器的代理进行管理
2.配置BurpSuite
在Proxy-Options中添加127.0.0.1:8080代理监听
在Proxy-Intercept中打开拦截
3.抓包
然后刷新重新加载要抓包的网页,就可以在Proxy-Intercept中看到抓取到的请求包
可以看到数据包中隐藏的flag,解码后得到flag{2333_surprise}
然后点击Forword可以看到另一个flag:flag{jkca@jncJKe873yfc}
4.分析(抓回包)
在访问192.168.47.99网站的时候抓取网站的响应包,在抓取到请求包后右键Do intercept->Response to this request
设置抓取响应包后点击Forward
可以看到网站响应返回的数据包
其中会有一个自动刷新的设置,进入到网站0.1s后就会刷新到3. ...