Postgresql 从nmap扫描中隐藏postgres版本
我正在设置一个服务器,postgresql作为服务运行。我可以使用nmap获取当前的postgresql版本Postgresql 从nmap扫描中隐藏postgres版本,postgresql,server,nmap,Postgresql,Server,Nmap,我正在设置一个服务器,postgresql作为服务运行。我可以使用nmap获取当前的postgresql版本 nmap -p 5432 -sV [IP] 它返回: PORT STATE SERVICE VERSION 5432/tcp open postgresql PostgreSQL DB 9.3.1 有没有办法在nmap扫描中隐藏postgresql版本?我已经搜索过了,但都是关于隐藏操作系统检测的 谢谢。这里只有一个答案:防火墙它 如果您打开了Postgres端口,
nmap -p 5432 -sV [IP]
它返回:
PORT STATE SERVICE VERSION
5432/tcp open postgresql PostgreSQL DB 9.3.1
有没有办法在nmap扫描中隐藏postgresql版本?我已经搜索过了,但都是关于隐藏操作系统检测的
谢谢。这里只有一个答案:防火墙它 如果您打开了Postgres端口,您将被探测。如果你可以被探测,你的服务可能会被中断。大多数数据库都不打算像这样向公众开放,它们没有被加固以抵御拒绝服务攻击
维护允许连接到它的IP的非常狭窄的白名单,并尽可能使用VPN或SSH隧道连接到Postgres,而不是直接连接。这还有一个额外的优点,那就是加密所有本来是纯文本的流量。您有一些选择,但首先要了解Nmap是如何做到的:PostgreSQL数据库服务器对格式错误的握手做出响应时会显示一条错误消息,其中包含发生错误的源代码中的行号。Nmap有一个可能的PostgreSQL版本列表,以及该特定版本中发生错误的行号。所讨论的源文件的更改非常频繁,Nmap通常可以告诉您使用的确切版本,或者至少是2或3个版本号的范围 那么你有什么选择呢
postmaster.c
顶部添加几百行空白行,这样Nmap的标准指纹就无法匹配。但要意识到,每次有新版本或安全补丁时,您都必须这样做我认为没有办法,因为
nmap
是一个功能强大的扫描工具,当检测到一个服务(开放端口)时,可以得到它的所有细节。@ok,希望这是一个教育练习。与任何工具一样,nmap在正确的人手中非常有用,在错误的人手中非常危险。谢谢。这是非常详细和有用的。如果是,请对答案进行投票并将其标记为已解决。也许对其他人有用。