隐藏通信隧道基础知识

隐藏通信隧道基础知识

1 隐藏通信隧道概述

这里的隧道,就是一种绕过端口屏蔽的通信方式。

常用的隧道列举:

  • 网络层:IPv6隧道、ICMP隧道、GRE隧道
  • 传输层:TCP隧道、UDP隧道、常规端口转发
  • 应用层:SSH隧道、HTTP隧道、HTTPS隧道、DNS隧道

2 判断内网的连通性

判断内网的连通性是指判断机器能否上外网等。

需要综合各种协议(TCP、HTTP、DNS、ICMP等)和端口通信的情况。

常规允许流出端口 : 80、8080、443、53、110、123等。

2.1 ICMP

ping 命令:

1
ping <IP/域名>

2.2 TCP协议

netcat(简称:nc)被誉为网安界的“瑞士军刀”,是一个短小精悍的工具,通常使用TCP或UDP协议的网络连接读写数据。

1
nc  <ip  端口>

2.3 HTTP协议

curl是一个利用URL规则在命令行工作的综合文件传输工具,支持文件的上传和下载。

curl命令不仅支持HTTP、HTTPS、FTP等众多协议,还支持POST、Cookie、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征

1
2
curl <ip地址:端口号>
如果远程主机开启了相应的端口,则会输出相应的端口信息,如果远程主机没有开通相应的端口,则没有任何提示,ctrl+c键可断开连接

2.4 DNS协议

在进行DNS连通性检测时,常用的命令为nslookup和dig

nslookup是windows操作系统自带的dns探测命令,在没有指定vps-ip时,nslookup会从系统网络的TCP/IP属性中读取dns服务器的地址。

1
nslookup www.baidu.com vps-ip

dig是Linux默认自带的DNS探测命令,在没有指定的vps-ip时,dig会到/etc/resolv.conf文件中读取系统配置的DNS服务器的地址。如果vps-ip为192.168.43.1将解析百度网的IP地址,说明目前DNS协议是连通的,

1
dig @vps-ip  www.baidu.com

2.5 proxy

还有一种情况是流量不能直接流出,需要在内网中设置代理服务器,常见于通过企业办公网段上网的场景。常用的判断方法如下

  1. 查看网络连接,判断是否存在与其他机器的8080(不绝对)等端口的连接(可以尝试运行ping -n 1 -a ip )
  2. 查看内网中是否有主机名类似于proxy的机器
  3. 查看IE浏览器的直接代理
  4. 根据pac文件的路径(可能是本地路径,也可能是远程路径),将其下载下来并查看
  5. 执行如下命令,利用curl工具进行确定
1
2
curl www.baidu.com  //不通
curl -x proxy-ip:port www.baidu.com //通
0%