微慑信息网

Nodejs 断点调试及其他(踩坑2)-vulsee.com

[微慑网 http://vulsee.com]

1、fs模块-readdir()方法

获得指定目录下,所有文件的列表;读取a文件夹中的所有文件列表,readdir方法只读一层;由于获取的文件列表files为数组形式,可以进行循环遍历操作

2、在vscode中,为什么输入node –inspect app.js出不来Debugger attached  进不了F5的状态

解决:[微慑网 http://vulsee.com]

ctrl+shift+p 搜索auto debug

未设置时,在左下角没有auto attach on

3、测试:按键F10 可以进入调试模式

4、当debug界面消失不见时:

调出debug console

5、格式化代码:[微慑网 http://vulsee.com]

::点击下面大括号

6、REPL 读取执行打印循环

ReadExecPrintLoop

7、F5运行 –打断点–访问页面–触发断点

8、我们希望让vscode使用npm的方式启动并调试,这就需要如下的配置

9、出现报错:npm ERR! Invalid package.json

解决:缺少package.json文件,使用npm init生成 并进行配置即可

[微慑网 http://vulsee.com]

10、安装模块:

全局安装(npm目录下)
npm i nodemon -g
局部安装 (当前项目目录下)
npm install nodemon –save

11、在权限校验中,如果手动修改请求路径大小写,会发现没有权限的页面也可以访问

12、nodejs不能代码热更新,现有的方法(如supervisor,nodemon)都是检测到文件改动就自动重启node

[微慑网 http://vulsee点com]

13、在nodejs里调用执行系统命令:

14、nodeJS服务需要重启才能执行。执行的路子我建议你跳过。你可以试试这个系统有没有调用系统命令的地方,然后替换系统命令。

::当存在任意文件读取,任意文件写入时,可在路由文件中引入chid_prscess模块,通过exec()执行命令执行;但不知道热更新,除非如12所写;

15、注:

nodejs 还是多找找 SSJI 漏洞 本质和一句话一样

router.post(‘/api’, function(req, res) {
var data = eval(“data = (” + req.body.password + “)”);
}

比方说这样的代码
POST password=res.write(‘ok’) 就能回显ok

16、参考菜刀nodejs,需要加载到路由配置入口
[nodejs]Customize.js

来自 <https://www.t00ls.net/viewthread.php?tid=30907&extra=&highlight=nodejs&page=1>

17、Nodejs远程调试漏洞 默认端口9229

NOdejs调试开启9229端口,如果外联则存在安全风险[微慑网 http://vulsee.com]

https://www.t00ls.net/viewthread.php?tid=52905&highlight=nodejs

18、nodejs调试文档指南:

https://nodejs.org/zh-cn/docs/guides/debugging-getting-started/

https://code.visualstudio.com/Docs/editor/debugging

https://code.visualstudio.com/docs/nodejs/nodejs-tutorial

https://nodejs.org/en/docs/guides/debugging-getting-started/

https://www.jianshu.com/p/6ec035b92740

19、Node.js反序列化远程代码执行漏洞通告CVE-2017-5941

https://www.t00ls.net/viewthread.php?tid=38116&highlight=node.js

[微慑网 http://vulsee.com]

20、Node.js反序列化利用Exp

https://www.t00ls.net/viewthread.php?tid=38111&highlight=node.js

21、CVE-2018-7160和Chrome DevTools协议说明

https://blog.ssrf.in/post/cve-2018-7160-chrome-devtools-protocol-memo/

22、利用vscode调试nodejs代码实践总结

https://segmentfault.com/a/1190000012081882

23、先知论坛上关于nodejs都漏洞挖掘分享:

https://xz.aliyun.com/search?keyword=nodejs

 

24、npm查看模块版本

npm view 模块 version

[微慑网 http://vulsee.com]

25、npm安装指定版本模块

npm install 模版@版本号 -g  / –save

26、Node.js中package.json中库的版本号详解:
[1]、 ~ 匹配最近的小版本依赖包,比如~1.2.3会匹配所有1.2.x版本,但是不包括1.3.0
[2]、^ 匹配最新的大版本依赖包,比如^1.2.3会匹配所有1.x.x的包,包括1.3.0,但是不包括2.0.0
[3]、* 意味着安装最新版本的依赖包

 

赞(0) 打赏
转载请附本站链接,未经允许不得转载,,谢谢:微慑信息网-VulSee.com » Nodejs 断点调试及其他(踩坑2)-vulsee.com

评论 抢沙发

微慑信息网 专注工匠精神

微慑信息网-VulSee.com-关注前沿安全态势,聚合网络安全漏洞信息,分享安全文档案例

访问我们联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

登录

找回密码

注册