• XSS跨站脚本攻击


    XSS全称(Cross Site Scripting)跨站脚本攻击,XSS属于客户端攻击,受害者最终是用户,在网页中嵌入客户端恶意脚本代码,最常用javascript语言。(注意:叠成样式表CSS已经被占用所以叫XSS)

    原因:输入没过滤,输出没编码。

    危害:劫持用户cookie,钓鱼,挂马

    分类:

    1、反射性XSS(中危,一次性不保存在数据库,交互的地方,比如带参和输入更新),

    2、储存型XSS(高危,长久保存在数据库)

    3、DOM XSS(低危,无数据库交互,浏览器的dom节点),可能存在html文本框,URL文本框,样式等

    操作:

    在万能闭合‘“>后面插入语句

    或者用弹窗语句‘“>,弹出一个对话框1,如果能弹窗说明这里是有漏洞的。

    示例,name变量没有进行过滤

    cookie收集展示

     设置下点击页面的时候返回地址,这样减少用户的疑问,也可以把返回的网址换成登录的网页

    111'">

    配置好返回的界面后,输入以下代码,提交然后刚才提交的那个电脑的cookie就保存在到pkxss里面了。且用户点击的界面在提交代码之后返回到之前配置的那个index.php上。

    盲打获取账户密码

    在不确定是否有注入点的地方输入后,登录后台可以把登录的账户和密码拿到,在md5解密就可以获得账户密码

    111'">

    post方式

    钓鱼

    '">

    注意:再次点击的时候没有弹出,是因为已经保存这个电脑信息,需要浏览器清除下cookie

    收集键盘信息

    同源策略:浏览器都约定了“同源策略,禁止页面加载或执行与自身来源不同的域的任何脚本既不同域之间不能使用JS进行操作。比如:x.com域名下的js不能操作y.com域名下的对象

    http:// www.   oldboyedu.com  :80 /   news/index.php
    协议    子域名    主域名               端口    资源地址

    必须要全部一样才算同源

    后台设置好Access-Control-Allow-Origin,设置为*,既允许所有人访问。

    111'">,键盘记录rk.js执行,然后在页面任何位置输入就可以键盘输入记录

    XSS绕过

    前端绕过,大小写,双写,注释,编码

    1、对前端的限制可以尝试进行抓包重发或者修改前端的HTML。比如修改输入框字符。
    2、防止后台对输入的内容进行正则匹配来过滤输入,对于这样的过滤可以考虑大小写混合输入的方法。比如:,利用的是精准过滤,换成大小写就绕过了。也可以用其他标签比如框架iframe,类型style,标签svg


    3、防止后台对输入的内容进行替换,采用拼拼凑的输入方法。比如:ript>alert(你吃饭像tuzi')ipt>
    4、使用注释来干扰后台对输入内容的识别。比如:ript>alert('你吃饭像tuzi')ipt>
    5:、编码,保证输出的情况下后台代码过滤

    htmlspecialchars()函数把一些预定义的字符转换为 HTML 实体

    可用的quotestyle类型:

    ENT_COMPAT - 默认。仅编码双引号

    ENT_QUOTES - 编码双引号和单引号

    ENT_NOQUOTES - 不编码任何引

    预定义的字符是:
     & (和号)成为 &
     " (双引号)成为 "
     ’ (单引号)成为'
     < (小于)成为 <
     >(大于)成为 >

    该函数的语法:htmlspecialchars(string,flags,character-set,double_encode)

    href输出:javascript:alert(1111) 

  • 相关阅读:
    【机器学习笔记】【随机森林】【乳腺癌数据上的调参】
    vscode启动不了,折腾了半天发现已经不支持win7
    Angular 使用教程——基本语法和双向数据绑定
    数组-扩展运算符的应用、Array.of()、find()、findIndex()、fill()、includes()、flat(),flatMap()
    NX二次开发UF_CAM_ask_cutter_db_object 函数介绍
    服务器数据恢复—云服务器mysql数据库表被truncate的数据恢复案例
    合宙esp32 环境搭建和使用方法
    世界杯来了,让 Towhee 带你多语言「以文搜球」!
    SSM+MySQL替换探索 openGauss对比postgresql12
    MySQL数据备份与恢复
  • 原文地址:https://blog.csdn.net/arissa666/article/details/131906728