当前位置: 首页 > article >正文

Web开发-JS应用NodeJS原型链污染文件系统Express模块数据库通讯

知识点:
1、安全开发-NodeJS-开发环境&功能实现
2、安全开发-NodeJS-安全漏洞&案例分析
3、安全开发-NodeJS-特有漏洞

在这里插入图片描述
在这里插入图片描述
node.js就是专门运行javascript的一个应用程序,区别于以往用浏览器解析原生js代码,node.js本身就可以解析执行js代码,并且效率更高更快。

演示案例-WEB开发-NodeJS-安装&语法&模块&安全&原型链污染

环境搭建-NodeJS-解析安装&库安装

0、文档参考:

https://www.runoob.com/nodejs/nodejs-tutorial.html

1、Nodejs安装

https://nodejs.org/en
在这里插入图片描述
在这里插入图片描述

2、三方库安装(用node.js启用一个网站)

安装命令:
npm install express
npm install body-parser
npm install cookie-parser
npm install multer
npm install mysql

express
Express是一个简洁而灵活的node.js Web应用框架

body-parser
node.js中间件,用于处理 JSON, Raw, Text和URL编码的数据。

cookie-parser
这就是一个解析Cookie的工具。通过req.cookies可以取到传过来的cookie,并把它们转成对象。

multer
node.js中间件,用于处理 enctype="multipart/form-data"(设置表单的MIME编码)的表单数据。

mysql
Node.js来连接MySQL专用库,并对数据库进行操作。

功能实现-文件操作&目录遍历&文件读取

0、文件操作

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1、Express开发(起一个网站接口)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

2、加入传参接受

返回值
在这里插入图片描述
在这里插入图片描述
请求值
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、实现文件读取/目录遍历

任意文件读取
在这里插入图片描述
在这里插入图片描述
目录遍历
在这里插入图片描述
在这里插入图片描述

功能实现-链接数据库&SQL注入

0、mysql数据库操作

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1、Express开发

在这里插入图片描述

2、SQL注入

在这里插入图片描述
在这里插入图片描述

功能实现-命令执行(RCE)

在这里插入图片描述

1、eval

在这里插入图片描述

2、exec & spawnSync

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

原型链污染

如果攻击者控制并修改了一个对象的原型,(__proto__)
那么将可以影响所有和这个对象来自同一个类、父祖类的对象。

CTF方向
参考:https://f1veseven.github.io/2022/04/03/ctf-nodejs-zhi-yi-xie-xiao-zhi-shi/

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

NodeJS安全

1、SQL注入&文件操作
2、RCE执行&原型链污染
2、NodeJS黑盒无代码分析

实战测试NodeJS安全

判断:参考前期的信息收集
黑盒:通过对各种功能和参数进行payload测试
白盒:通过对代码中写法安全进行审计分析

http://www.kler.cn/a/598039.html

相关文章:

  • JAVASCRIPT 基础 DOM元素,MAP方法,获取输入值
  • 【设计模式】SOLID 设计原则概述
  • git日常学习
  • prompt工程起步
  • AI基础01-文本数据采集
  • C语言-装饰器模式详解与实践 - LED控制系统
  • 【MySQL】从零开始:掌握MySQL数据库的核心概念(三)
  • 对接OpenAI 4O RealTime实现语音实时翻译
  • 【Json-RPC框架】:Json存储结构,operator[ ]返回的就是对应的value对象
  • nnunet复现第一天
  • 【weixin9006】优购电商小程序的设计与实现
  • 人工智能之数学基础:特征值和特征向量
  • Pytorch深度学习教程_9_nn模块构建神经网络
  • 数据建模流程: 概念模型>>逻辑模型>>物理模型
  • 大数据驱动:UI设计如何更懂用户
  • 数据结构与算法:宽度优先遍历
  • [node] 4 http模块
  • 【C++教程】break语句
  • MOE框架详解与实现
  • hackmyvm-lookup