【问题标题】:SMTP enum pythonSMTP 枚举 python
【发布时间】:2020-09-30 21:14:38
【问题描述】:

我正在 metasploitable 上测试 smtp 枚举,但我没有让它工作。
我正在使用的代码是:

import socket
import sys


ip = '192.168.1.137'
port = 25
users = ['msfadmin'] # Se deberia hacer leyendo de un fichero los usuarios

try:
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.settimeout(5)

    connect = s.connect((ip, port))
    banner = s.recv(1024)

    for user in users:
        if '220' in str(banner):
            s.send(('VRFY ' + user).encode())
            print(ip, s.recv(1024))
    s.close()

except socket.timeout as st:
    print('Timeout:', ip)
except socket.error as sr:
    print('Connection error', sr)

Nmap 扫描

Nmap scan report for 192.168.1.137
Host is up (0.00073s latency).

PORT   STATE SERVICE
25/tcp open  smtp

在线 print(ip, s.recv(1024)) 总是给我超时。

【问题讨论】:

    标签: python sockets smtp


    【解决方案1】:
            s.send(('VRFY ' + user).encode())
            print(ip, s.recv(1024))
    

    您正在发送VRFY user。但是您应该发送VRFY user\r\n,因为该命令必须以 CR+LF 结尾。服务器将等待您未发送的其余命令(缺少的 CRLF)。因此,服务器和客户端都在等待对方发送数据。

    有关更多信息,请参阅SMTP standard,因为这就是标准的用途。

    【讨论】:

      猜你喜欢
      • 2016-04-10
      • 2015-08-08
      • 1970-01-01
      • 2018-02-14
      • 2014-06-03
      • 2011-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多