每隔几秒定位负责调用 API 调用的未知 curl 脚本/命令时遇到问题"/>
在 EC2 服务器上每隔几秒定位负责调用 API 调用的未知 curl 脚本/命令时遇到问题
我陷入了一个超级奇怪的问题。我有一个在 EC2 实例中的 NodeJs 上运行的项目,我正在使用 PM2 来运行该项目。一切正常,但我看到我们项目中的两个 api 端点从某个未知的地方被调用。在对这个实例执行 ssh 后,执行
cat /etc/crontab
不会列出任何活动的 cron 作业,请求都不是来自客户端或任何其他 AWS 服务,如 lambda 或 API 网关。
几个月前我们就获得了对这台服务器的访问权,今天我们意识到有 2 个这样的端点每隔几个时间间隔就会被一个未知来源的请求调用。另外,由于一些原因,也无法联系到当初创建这个实例的人
这是调用在节点项目中的样子:
GET /api/host/areas/cron 200 0.814 ms - 63
GET /api/host/areas/updateStatus 200 0.814 ms - 63
/cron
和 /updateStatus
是我们节点项目中的端点,但正如我上面解释的那样,它们都不是从我们的服务中调用的。
我试过的:
我做了一些研究并尝试在调用此端点时打印请求,这就是请求标头的样子(我已经从下面更改了 ip 地址值、axzn-trace-id 和主机值以保持详情私人):
{
0|npm | host: 'api.our-company',
0|npm | connection: 'close',
0|npm | 'x-forwarded-for': '12.34.56.78' // (value changed, this shows our server ip),
0|npm | 'x-forwarded-proto': 'https',
0|npm | 'x-forwarded-port': '443',
0|npm | 'x-amzn-trace-id': 'Root=1-xxxxxxxx-xxxxxxxxxxxxxx',
0|npm | 'user-agent': 'curl/7.61.1',
0|npm | accept: '*/*'
0|npm | }
所以,看起来这些请求是通过一些未知的 Curl 命令调用的,该命令可能安装在我们的服务器上,并且像调度程序一样每隔几秒调用 2 个有问题的端点。
我想要的:
我的问题是如何知道调用了哪些命令以及如何修改它们?这个命令的详细信息(如果有的话)存储在 ec2-instance 中的什么地方?
PS: 请注意,我不想在不知道其来源的情况下停止或删除这些命令,然后我想修改调用频率并在知道这些调用是如何进行后在其之上添加更多.
过去 2-3 天我一直在努力解开这个谜团,但没有运气。谢谢。
回答如下:更多推荐
在 EC2 服务器上每隔几秒定位负责调用 API 调用的未知 curl 脚本/命令时遇到问题
发布评论