一、反射性xss(get)

登录pikachu选择xss模块,第一题,写了一下,发现输入长度不够,很简单,在前端改一下长度就可以使用了,这题就不做过多解释

或者直接在URL中进行写入,也是肥肠滴方便

就很简单的弹窗了,下一道

二、反射性XSS(post)

第二道xss,要输账号密码,我们先用暴力破解的密码试一下

好的进去了,那我们就不用多管了。

继续试一下看看能不能正常弹窗

又弹窗????没设置过滤那我们就笑纳了呗,下一个

三、存储型xss

是一个无情的留言板,我们来正常弹窗试一下

????结果又正常弹窗了,看来还是没设置什么过滤,那我们继续下一道呗

四、DOM型xss

来嘛

终于不可以了,我们找一下问题所在

发现是因为它一点击就会触发domxss(),找到了domxss函数的内核是

function domxss(){
var str = document.getElementById("text").value;
document.getElementById("dom").innerHTML = "<a href='"+str+"'>what do you see?</a>";
}

闭合一下发现还是很容易就弹窗了,pyload是'><img src="#" onmouseover="alert('xss')">

至于下一个xss-x的问题,和这个题是肥肠相似的,所以就不再单独解释,直接给出弹窗叭

五、xss之盲打

让我们小试一下

发现没有弹窗,但问题很大,看了一下提示,登陆了一下后台

发现已经成功弹窗~

六、xss之过滤

我正常来弹个窗试一下

(别说这些'>'的话,不要怕,就是干!)?????也就是说他把<>给过滤掉了??

测试了后其实并不是,有很多没有过滤的东西,测试了很久发现其实只需要更改大小写就可以进行绕过

payload:<SCRIPT>alert(1)</ScriPT>

七、xss之htmlspecialchars

需要查看一下源码了

htmlspecialchars这个函数将网页上面的爬取直接写到href里面,可以看到 “ " ”,“ > ”和“ < ”都经过了编码,剩下的字符没有,单引号依然可以使用

既然已经记录想必就可以构造闭合点击弹窗了

' onclick=alert(1) '

成功

八、xss之href输出

直接<script>alert(1)</script>

发现

不是很对,既然写在herf里了的话,就直接构造alert

payload:javascript:alert(1)

OK.下一个

九、xss之js输出

上<script>alert(1)</script>,发现无任何反应

看源码发现到了问题所在,多加一个闭合就可了

payload:'</script><script>alert('xss')</script>

弹窗成功

CSRF

一、csrf(get)

先根据提示登录

进入修改个人信息

利用审查元素,查看submit类型

发现是get传参,提交一次试试

找到了传参的参数以及路径,利用netword构造payload

http://127.0.0.1/pikachu/vul/csrf/csrfget/csrf_get_edit.php?sex=boy&phonenum=123456789&add=PPSUC&email=zerben%40ppsuc.edu.cn&submit=submit

用户点击后就可以完成修改

成功

二、csrf(post)

同样,登录lili的账号,点击修改

查看审查元素发现是post传参

这里的攻击方式跟XSS中POST类型是一样的,攻击者可以搭建一个站点,在站点上做一个表单,诱导lucy点击这个链接,当用户点击时,就会自动向存在CSRF的服务器提交POST请求修改个人信息。

编写一个post.html页面,本文把此页面放到 Kali 的/var/www/html/pikachu/doge_csrf下,然后启动 apache 服务

之后只需要把构造的URL发送给受害者,让其点击就可以完成目标操作,成功修改信息。

url:

http://192.168.171.129/pikachu/doge_csrf/post.html


<html>
<head>
<script>
window.onload = function() {
document.getElementById("postsubmit").click();
}
</script>
</head>
<body>
<form method="post" action="http://192.168.171.133/pikachu/vul/csrf/csrfpost/csrf_post_edit.php">
<input id="sex" type="text" name="sex" value="girl" />
<input id="phonenum" type="text" name="phonenum" value="12345678922" />
<input id="add" type="text" name="add" value="hacker" />
<input id="email" type="text" name="email" value="lucy@pikachu.com" />
<input id="postsubmit" type="submit" name="submit" value="submit" />
</form>
</body>
</html>

三、csrf(token)

目前没有好的方法可以绕过

 

WEB攻击与防御技术 pikachu——XSS攻击加CSRF的更多相关文章

  1. 如何发起、防御和测试XSS攻击,我们用DVWA来学习(上)

    XSS 全称Cross Site Scripting 即‘跨站脚本攻击’. 从其中文释义我们能直观的知道,这是一种对网站的攻击方式. 其原理在于,使用一切可能手段,将可执行脚本(scripting)植 ...

  2. Web安全攻防(一)XSS注入和CSRF

    跨站脚本攻击(XSS) XSS(Cross Site Scripting),为不和层叠样式表CSS混淆,故将跨站脚本攻击缩写为XSS. 攻击原理: 恶意攻击者往Web页面里插入恶意Script代码,当 ...

  3. 常见【十种】WEB攻击及防御技术总结

    最近参加了一个WEB安全培训,感觉WEB攻击跟防御都是挺有意思的.以下总结比较简短,仅供观赏哈. 一.XSS攻击 [介绍] xss攻击是跨站脚本攻击,例如在表单中提交含有可执行的javascript的 ...

  4. web攻击之零:WEB攻击及防御技术汇总

    一.XSS攻击 [介绍] xss攻击是跨站脚本攻击,例如在表单中提交含有可执行的javascript的内容文本,如果服务器端没有过滤或转义这些脚本,而这些脚本由通过内容的形式发布到了页面上,这个时候如 ...

  5. 关于Web安全的那些事(XSS攻击)

    概述 XSS攻击是Web攻击中最常见的攻击方法之一,它是通过对网页注入可执行代码且成功地被浏览器执行,达到攻击的目的,形成了一次有效XSS攻击,一旦攻击成功,它可以获取用户的联系人列表,然后向联系人发 ...

  6. web 安全问题(二):XSS攻击

    上文说完了CSRF攻击,本文继续研究它的兄弟XSS攻击. 什么是XSS攻击 XSS攻击的原理 XSS攻击的方法 XSS攻击防御的手段 什么是XSS攻击 XSS攻击全名(Cross-Site-Scrip ...

  7. WEB安全实战(五)XSS 攻击的第二种解决方式(推荐)

    序 说到 XSS 攻击,前边已经有两篇文章在讲这个事了,这次又拿出来说,主要是针对近期工作中的一些新的问题.那么之前是怎么解决问题的呢?为什么又要换解决方式?以下就具体的跟大家分享一下. 旧方案 公司 ...

  8. 如何发起、防御和测试XSS攻击,我们用DVWA来学习(下)

    上一篇我们了解了XSS攻击的原理,并且利用DVWA尝试了简单的XSS攻击,这一篇我们来实现更复杂的攻击,然后探讨防御机制和测试理念. 前面我们通过脚本注入让网页弹出了用户cookie信息,可以光弹窗是 ...

  9. 程序员常用的3大Web安全漏洞防御解决方案:XSS、CSRF及SQL注入(图文详解)

    https://blog.csdn.net/ChenRui_yz/article/details/86489067 随着互联网的普及,网络安全变得越来越重要,程序员需要掌握最基本的web安全防范,下面 ...

  10. XSS攻击常识及常见的XSS攻击脚本汇总

    一.什么是XSS? XSS全称是Cross Site Scripting即跨站脚本,当目标网站目标用户浏览器渲染HTML文档的过程中,出现了不被预期的脚本指令并执行时,XSS就发生了. 这里我们主要注 ...

随机推荐

  1. QT程序自动寻找依赖的DLL

    1.找到项目的生成目录,比如项目源码路径:E:\Qt\Login: 2.进入它的项目生成目录,拷贝出可执行程序,例如放置在 E:\QtApp中. 3.然后从开始菜单打开 Qt 命令行, a.输入命令 ...

  2. Windows10使用WSL(Windows Subsystem for Linux)

    官方页面地址:https://docs.microsoft.com/zh-cn/windows/wsl/ 查看WSL的IP地址:ip addr | grep eth0 下面是一个示例 PowerShe ...

  3. IBM免费服务器试用

    IBM公司的免费资源,仅需一个邮箱就可以注册申请,注册可以有60天试用期. 1.注册 点击 注册进入IBM教育资源官网进行注册,注册时仅需要一个有效邮箱,QQ,Gmail,outlook均可. 注册邮 ...

  4. 15、java递归解决迷宫问题

    递归真是一个.看着简单,听着简单,写不出来,想不到.以前也不是不理解递归,也不是看不懂递归的代码,但说实话真的很难想到自己去用这个递归也很难理清楚这个递归到底从哪里开始到哪里结束,将哪个步骤作为 一个 ...

  5. keeplive 双击热备方案 (对haproxy负载均衡 )双击热备方案

    1.安装 keepalived ,必选安装在haproxy 容器之内 1.进入容器:docker exec  -it   h1 bash 后执行下面步骤 1.更新apt-get apt-get upd ...

  6. rxswift自定义扩展UI组件

    扩展UI组件时常用到的一些发布者与订阅者如下: 发布者: ControlEvent(专门用于描述 UI 控件所产生的事件) 订阅者(观察者): Binder(专门用于绑定UI状态的,如:当某个状态改变 ...

  7. linux express配置ssl证书,开启https访问

    1.下载ssl证书的Nginx版本,在项目根目录新建https空文件夹,把crt文件和key文件复制到https文件夹中; 2.安装依赖:npm i fs http https 3.修改www文件的内 ...

  8. vba_pj_0001_auto_date

    Const init_info As String = "InitInfo"Const end_row_op As Integer = 100  'tmpConst end_row ...

  9. JSP图书管理系统

    allbook.jsp pageEncoding="UTF-8"%> <%@ page import = "java.util.*" %> & ...

  10. Java基础__04.GUI编程

    GUI编程常见的组件: 窗口 弹窗 面板 文本框 列表框 按钮 图片 监听事件 鼠标操作 键盘事件 GUI简介 GUI的核心技术:Swing AWT,是需要jre环境的. AWT介绍 包含了很多类和接 ...