第31天:安全开发-JS应用&WebPack打包器&第三方库JQuery&安装使用&安全检测

第31天:安全开发-JS应用&WebPack打包器&第三方库JQuery&安装使用&安全检测
Yatming的博客打包器-WebPack-使用&安全
1 | 参考:https://mp.weixin.qq.com/s/J3bpy-SsCnQ1lBov1L98WA |
五个核心概念:
- 【入口(entry)】:指示 webpack 应该使用哪个模块,来作为构建其内部依赖图的开始。
- 【输出(output)】:在哪里输出文件,以及如何命名这些文件。
- 【Loader】:处理那些非JavaScript文件(webpack 自身只能解析 JavaScript和json)。webpack 本身只能处理JS、JSON模块,如果要加载其他类型的文件(模块),就需要使用对应的loader。
- 【插件(plugins)】:执行范围更广的任务,从打包到优化都可以实现。
- 【模式(mode)】:有生产模式production和开发模式development。
1 | 使用: |
创建一个加法js,减法js
count.js
1 | export default function count(x,y){ |
sum.js
1 | export default function sum(x,y){ |
main.js
1 | import count from "./js/count"; |
这里这个main.js
包含了sum和count这两个js文件。然后这里调用这两个函数进行传参。
到浏览器的控制台可以看到js的输出。
1 |
|
全局安装webpack
1 | npm i webpack-cli -g |
创建webpack.config.js(配置文件)(最好不要改名)
1 | const path = require('path'); // 引入path模块 |
进行打包
1 | npx webpack |
如果没有使用打包器的话,这里就要一条一条的进行引用,这里使用打包器之后,只需要引用打包器生成的js文件即可。
development模式
这个模式是可以直接看到源码的
production模式
这里切换模式。
这里在对这个文件进行查看,发现只输出了结果。
在前端同样是看不到源码的
真实案例—顺丰快递
PacketFuzzer
项目地址:https://github.com/rtcatc/Packer-Fuzzer
第三方库-JQuery-使用&安全
下载:https://www.jq22.com/jquery-info122
有问题的版本:https://research.insecurelabs.org/jquery/test/
CVE-2020-11022/CVE-2020-11023
参考文章:https://blog.csdn.net/weixin_44309905/article/details/120902867
jQuery框架漏洞全总结及开发建议:https://cloud.tencent.com/developer/article/1516331
点击上图按钮,这里就会弹窗1:
但是这里将版本进行切换:
以及不弹窗了。语句还是正常的插入到div标签中。
说明jquery有内置的过滤。
1 | 本身dom: |
利用漏洞:
版本符合,<style><style ></style>``<img src="yy" οnerrοr="alert(1)">
值可控 就可以造成xss
能够造成漏洞的原因:
内置过滤:https://blog.csdn.net/axxxwo/article/details/120586585
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果