服务器的远程端口是什么及简单的介绍?
连接服务器端口是什么?端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535, 一般连接 Linux 云服务器要放通22号端口,连接 Windows 服务器需要开放3389端口。
3389是服务器的远程登录端口,是很多服务器远程连接的默认端口,因此很多黑客都针对这个端口进行扫描,为保证安全,可以修改远程连接的端口。
22端口就是ssh端口,PcAnywhere建立TCP和这一端口的连接可能是为了寻找ssh,用于连接linux 22端口的工具有 SSH Secure Shell 等。
用户需要在安全组中开放端口后,才可以使用端口对应的服务,在修改了服务的端口之后,还需要在对应的安全组,开放对应的端口,否则会导致服务不能使用,另外,比较常见的服务器端口有:80端口、443端口、21端口等。
一般80作为网页服务器的访问端口,是http协议的默认端口,在输入网站的时候其实浏览器(非IE)已经帮你输入协议了。
21端口主要用于FTP(File Transfer Protocol,文件传输协议)服务,FTP服务主要是为了在两台计算机之间实现文件的上传与下载。
代理服务器常用以下端口:
(1) HTTP协议代理服务器常用端口号:80/8080/3128/8081/9080
(2) SOCKS代理协议服务器常用端口号:1080
(3) FTP(文件传输)协议代理服务器常用端口号:21
(4) Telnet(远程登录)协议代理服务器常用端口:23
HTTP服务器,默认的端口号为80/tcp(木马Executor开放此端口);
HTTPS(securely transferring web pages)服务器,默认的端口号为443/tcp 443/udp;
Telnet(不安全的文本传送),默认端口号为23/tcp(木马Tiny Telnet Server所开放的端口);
FTP,默认的端口号为21/tcp(木马Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所开放的端口);
TFTP(Trivial File Transfer Protocol ),默认的端口号为69/udp;
SSH(安全登录)、SCP(文件传输)、端口重定向,默认的端口号为22/tcp;
SMTP Simple Mail Transfer Protocol (E-mail),默认的端口号为25/tcp(木马Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都开放这个端口);
POP3 Post Office Protocol (E-mail) ,默认的端口号为110/tcp;
WebLogic,默认的端口号为7001;
Webshpere应用程序,默认的端口号为9080;
webshpere管理工具,默认的端口号为9090;
JBOSS,默认的端口号为8080;
TOMCAT,默认的端口号为8080;
WIN2003远程登陆,默认的端口号为3389;
Symantec AV/Filter for MSE ,默认端口号为 8081;
Oracle 数据库,默认的端口号为1521;
ORACLE EMCTL,默认的端口号为1158;
Oracle XDB( XML 数据库),默认的端口号为8080;
Oracle XDB FTP服务,默认的端口号为2100;
MS SQLSERVER数据库server,默认的端口号为1433/tcp 1433/udp;
MS SQLSERVER数据库monitor,默认的端口号为1434/tcp 1434/udp;
QQ,默认的端口号为1080/udp
在未经授权的情况下夺取计算机系统控制权的行为是 违法行为, 此篇文章仅作为学习交流和探讨,若要测试成果,请在自己虚拟机上测试,或者被允许渗透的计算机系统上演练, 请勿做出违法之骚操作,操作者做出的一切违法操作均与本人和此文无关
本文使用Nmap进行扫描,其他扫描手段本文不进行探讨
Nmap是端口扫描方面的业内标准,网上的资料让人眼花缭乱,时至今日,各式各样的防火墙已经普遍采用了入侵检测和入侵防御技术,他们能够有效地拦截常见的端口扫描,所以,即使使用Nmap程序扫描结果一无所获也不是什么意外的事。换句话说, 如果你在公网上对指定网段进行主机扫描时没检测出一台在线主机,那么就应当认为扫描行动多半是被防火墙系统拦截下来了,反之则是另一种极端情况:每台主机都在线,每个端口都处于开放状态
SYN扫描
所谓的SYN扫苗实际上是一种模拟TCP握手的端口扫描技术。TCP握手分为3个阶段:SYN、SYN-ACK、ACK。在进行SYN扫描时,Nmap程序向远程主机发送SYN数据包并等待对方的SYN-ACK数据。 如果在最初发送SYN数据包之后没有收到SYN-ACK响应,那么既定端口就不会是开放端口,在此情况下,既定端口不是关闭就是被过滤了
在使用Nmap扫描之前,可以先使用maltego之类的信息搜集工具分析出有用的信息。我使用一个非法网站的IP来作为演示
需要注意的是,某个端口是开放端口不代表这个端口背后的程序存在安全缺陷,我们仅能够通过开放端口初步了解计算机运行的应用程序,进而判断这个程序是否存在安全缺陷
版本扫描
虽然SYN扫描具有某种隐蔽性,但它不能告诉我们打开这些端口的程序到底是什么版本,如果说我们想要知道这台主机的某个端口在运行着什么程序以及它运行的版本,这在我们后期威胁建模阶段有极大的用处, 使用-sT或者-sV 即可查看
运气很好,看来这个网站运行的程序有安全漏洞,这个名为OpenSSH 53的软件存在着一个CVE-2016-10009漏洞,攻击者可以通过远程攻击openssh来获得服务器权限。我们在这里不做攻击操作,毕竟这是别人的网站,虽然是个违法网站。如果有机会后期笔者将会根据情况写一些关于漏洞利用的文章
UPD扫描
Nmap的SYN扫描和完整的TCP扫描都不能扫描UDP,因为UDP的程序采用无连接的方式传输。在进行UDP扫描时,Nmap将向既定端口发送UPD数据包,不过UDP协议的应用程序有着各自不同的数据传输协议,因此在远程主机正常回复该数据的情况下,能够确定既定端口处于开放状态。 如果既定端口处于关闭状态,那么Nmap程序应当收到ICMP协议的端口不可达信息。 如果没有从远程主机收到任何数据那么情况就比较复杂了,比如说:端口可能处于发放状态,但是响应的应用程序没有回复Nmap发送的查询数据,或者远程主机的回复信息被过滤了,由此可见 在开放端口和被防火墙过滤的端口方面,Nmap存在相应的短板
扫描指定端口
指定端口的扫描可能造成服务器崩溃,最好还是踏踏实实的彻底扫描全部端口 。就不拿别人的服务器来测试了,毕竟我也怕被报复,在这里我把渗透目标设置为我自己的xp靶机,步骤跟前面一样,扫描出端口查看是否有可利用程序,然后对想扫描的端口进行扫描
在渗透测试中,我们都不希望致使任何服务器崩溃,但是我们的确可能会遇到那些无法正确受理非预期输入的应用程序,在这种情况下,Nmap的扫描数据就可能引发程序崩溃
在命令提示符中输入netstat -an可以扫描某一计算机开放的所有端口,具体步骤如下:
工具/材料:电脑
1、打开电脑,右键单击左下角开始,然后点击运行。
2、在运行的输入框里面输入cmd,然后点击确定。
3、在弹出的cmdexe中输入netstat -an,然后敲击回车,这样就可以看到这个计算机所有开放的端口了。
1、安装telnet。我的win7下就没有telnet,在cmd下输入telnet提示没有该命令。于是我们进入控制面板---->程序---->打开或关闭windows功能。然后等一段时间,在出来的对话框把telnet客户端和telnet服务器勾选上,其他的不用管,然后点击确定。这样就安装好了telnet组件了。
2、 下面开始测试某个端口是否开启,比如我测的是192168342的2121这个端口。在cmd下输入
start /min telnet 192168342 2121
之后会出现一个窗口,是最小化的,你等一会,如果窗口自动关闭了,说明端口是关闭的或主机ping不通,反之端口开放
比如这个2121端口是开放的,就出现如图所以的窗口,否则窗口关闭。
3、你可以用自己的机子做实验在CMD下输入netstat -anp tcp可以查看当前主机tcp开放了哪些端口
最后 ping命令是不能检测端口,只能检测你和相应IP是否能连通
补充: Linux下检测本机的端口是否被占用:
netstat –apn | grep 8080
又或者在,windows下
在cmd里面使用netstat -an命令来查看 开放的TCP和UDP端口。
在cmd里面使用start /min telnet 127001 某端口,之后会出现一个窗口,是最小化的,你等一会,如果窗口自动关闭了,说明端口是关闭,反之端口开放。
Linux下
如windows下使用telnet的方法
使用nc命令
nc检测端口的用法:
nc -z -w 10 %ip% %PORT%
-z表示检测或者扫描端口
-w表示超时时间
-u表示使用UDP协议
例如:
# nc -z -w 10 -u 127001 53
Connection to 127001 53 port [udp/domain] succeeded!
# nc -z -w 10127001 53
Connection to 127001 53 port [tcp/domain] succeeded!
# echo $
0
# nc -z -w 10 8887 53
# echo $
1
#
端口成功联通返回值是0,提示succeeded;否则返回1,不提示任何数据。linux下未作测试,自行测试。
0条评论