渗透测试信息收集之常用端口信息

渗透测试信息收集之常用端口信息

在渗透测试的过程中,信息收集是至关重要的一步。其中,根据目标主机所开放的端口信息来推断其所运行的服务,是信息收集的一个重要环节。本文将讲述一些常见的端口信息收集攻略,以供参考。

常用端口信息查询

nmap 信息收集

nmap是一款常用的端口信息扫描工具。通过输入命令nmap -sS -sV -p- target_ip,nmap将扫描目标主机所有的端口,并返回开放的端口以及所运行的服务和版本信息。

示例:

nmap -sS -sV -p- 192.168.1.1
Starting Nmap 7.91 ( https://nmap.org ) at 2022-05-20 16:00 CST
Nmap scan report for 192.168.1.1
Host is up (0.015s latency).
Not shown: 65532 closed ports
PORT      STATE SERVICE    VERSION
23/tcp    open  telnet     BusyBox telnetd
53/tcp    open  domain     TV-IP DAS 1.0 DNS server
80/tcp    open  http       Web server
1900/tcp  open  upnp       Intel PC SDK (UPnP standard service)
2323/tcp  open  telnet     GE Security Supra ActiveKEY server telnetd
8000/tcp  open  http       Web server
49152/tcp open  http-proxy MikroTik RouterOS http proxy

从结果中可以看出,192.168.1.1主机开放了如上所示的7个端口,分别运行着各自的服务。

端口号及其对应服务查询

同时,在进行渗透测试时,了解常见端口号所对应的服务也是非常必要的。以下是一些常见的端口号及其对应的服务。

端口号 服务
21 FTP
22 SSH
23 Telnet
25 SMTP
53 DNS
80 HTTP
443 HTTPS
1194 OpenVPN
1433 Microsoft SQL Server
1521 Oracle
3306 MySQL
5432 PostgreSQL

示例

示例一

假设我们需要测试目标机器 192.168.1.100 的端口信息并查找其开放了哪些端口。我们输入命令 nmap -sS -sV -p- 192.168.1.100 进行扫描。

结果显示其中有一个端口号开放,如下所示:

3306/tcp open  mysql      MySQL 5.7.15

从结果中可以看出,端口号为 3306 的端口开放了,并且是用于运行 MySQL 5.7.15 数据库服务。

示例二

假设我们需要测试目标机器 192.168.1.200 的端口信息,但我们不知道目标机器开放了哪些端口。我们可以使用nmap进行全端口扫描,命令如下:

nmap -p- 192.168.1.200

结果显示开放了如下的两个端口:

139/tcp  open  netbios-ssn Samba smbd 3.x - 4.x (workgroup: WORKGROUP)
445/tcp  open  netbios-ssn Samba smbd 3.x - 4.x (workgroup: WORKGROUP)

从结果中可以看出,目标机器开放了两个端口号为 139 和 445 的端口,同时运行着 Samba smbd 3.x - 4.x 服务。这是一个常见的文件共享服务,需要注意是否存在漏洞。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:渗透测试信息收集之常用端口信息 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • C#数据库操作小结

    C# 数据库操作小结 引言 在 C# 应用程序开发中,数据库操作是非常常见的一项任务。本文将会从以下几个方面给读者提供 C# 数据库操作的攻略: 数据库连接 数据库查询 数据库插入 数据库更新 数据库删除 数据库连接 若要进行数据库操作,首先需要与数据库进行连接。以下是一个连接 MySQL 数据库的示例: using System.Data; using M…

    database 2023年5月21日
    00
  • redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool at redis.clients.util.Pool.getResource(Pool.java:53)

    解决方法1: 主要就是要去redis的配置文件中修改密码,修改完密码后记得重启redis。跟着作者的步骤走,可以完美解决! 解决方法2: 在配置文件中把password去除一样可以解决! 1.把redis配置文件中的password注释了 2.把spring-redis中的passwrod配置也注释了   参考:https://blog.csdn.net/i…

    Redis 2023年4月12日
    00
  • Linux od命令详细介绍及用法实例

    Linux od命令详细介绍及用法实例 简介 od命令是Linux下的一个十六进制的文本格式转换命令。它可以把一个文件以不同进制数的方式展示到屏幕上,包括十六进制,八进制,二进制和ASCII码等。 语法 od命令的基本语法如下: od [选项] [文件名称] 常用选项 -a:以ASCII码字符形式输出文件内容; -b:以八进制形式输出文件内容; -c:以AS…

    database 2023年5月22日
    00
  • SQL Server 的高可用性和灾难恢复的区别

    SQL Server 的高可用性和灾难恢复都是保障数据可靠性的方式,但它们的实现和应用场景是不同的。 高可用性 高可用性通常是指在系统运行过程中,持续保持系统服务的可用性,避免因单点故障而造成业务中断。 SQL Server 的高可用性实现方式有以下几种: Always On 可用性组 Always On 可用性组是 SQL Server 2012 引入的一…

    database 2023年3月27日
    00
  • DBMS 中断言和触发器的区别

    DBMS中断言和触发器都是能够在数据库中执行一些自动化操作的机制,但是它们之间有明显的区别。 断言 断言是指在应用程序和数据库之间的一种验证机制,用于确保在数据库中插入、更新或删除数据时满足某些条件。如果这些条件不被满足,就会抛出一个错误消息并回滚事务。 断言通常有两种类型:检查和动作。 检查断言验证某些数据是否已经存在于数据库中。如果它存在,插入会失败。 …

    database 2023年3月27日
    00
  • SQL注入原理与解决方法代码示例

    SQL注入原理与解决方法介绍 SQL注入攻击是通过在应用程序中嵌入恶意代码,从而使攻击者可以向数据库提交恶意SQL语句的一种方式。这种攻击方式可以绕过应用程序的安全控制,从而造成安全漏洞,可能导致机密数据泄露、数据篡改甚至拒绝服务等安全风险。 解决SQL注入攻击的方法主要有以下几种: 严格的输入过滤: 对用户输入的数据进行校验和限制,防止用户在输入数据时注入…

    database 2023年5月19日
    00
  • sql存储过程几个简单例子

    以下是关于SQL存储过程的一些详细说明和示例: 什么是SQL存储过程? SQL存储过程是一组为了完成特定任务的SQL语句集合。存储过程通常用于实现事务处理任务,例如插入、删除或更新大量数据的操作。 与将SQL命令直接写入代码中相比,使用存储过程有很多优势,包括: 重用性:存储过程可以在多个应用程序中重复使用,无需编写相同的SQL语句。 性能:存储过程通常比动…

    database 2023年5月21日
    00
  • 简单了解Spring中的事务控制

    简单了解Spring中的事务控制 Spring作为一款优秀的 Java 开发框架,提供了非常完善的数据访问和事务控制支持。Spring 的事务控制主要是通过AOP(面向切面编程)实现,易于扩展,功能强大。 什么是事务 事务是指一组要么全部执行成功,要么全部回滚的一组数据库操作。在Java应用程序中,事务的支持是非常重要和必要的,会话中出现故障或意外错误时,可…

    database 2023年5月21日
    00
合作推广
合作推广
分享本页
返回顶部