【发布时间】:2019-05-23 00:56:58
【问题描述】:
使用 Node.js 执行命令行的代码示例。它将返回页面的完整 HTML。
const getPageHtmlResponse = (fullUrl) => {//fullUrl is come from input form in web page
return new Promise((resolve, reject) => {
try {
const exec = require('child_process').exec
exec("curl "+fullUrl, (err, stdout, stderr) => resolve(stdout))
} catch (error) {
resolve(false)
}
});
}
此代码是否不安全?我的意思是黑客可以在上面注入另一个命令来操纵系统或服务器?
如果是,有什么好方法可以逃脱或使其安全?
【问题讨论】:
-
1.永远不要相信用户输入。 2. 永远不要相信用户输入。
标签: node.js linux shell ubuntu command