1.端口识别法
同一台机器上,为了避免端口冲突,不同的服务进程,肯定使用的不同的监听端口。
losf -i :8080
2.工作目录识别法
不同的服务进程,一般会使用不同的工作目录,因此可以通过工作目录来识别。
pwdx <PID>
3.命令行识别法
有时,会在启动的命令上,添加不同的参数,以区分不同的服务
java -jar app.jar --name=order
java -jar app.jar --name=goods
java -jar app.jar --name=stock
可以通过pgrep -a java
查询java进程命令行参数,然后根据参数不同即可识别
pgrep -a java
4.只知道URL的方式
在网页上访问的流量,经过各层转发,最终肯定会流到你的后端服务中去,比如nginx。
因此可以构造一个含特殊标识的请求,比如包含abcdcba参数的请求,然后发送出去,http://192.168.1.128/user/get?id=1&name=abcdcba。
然后通过ngrep抓包这个特殊标识,就可以获取到后端的服务的端口号,再使用前面的方法找进程即可。
ngrep -d any 'abcdcba'