代码之家  ›  专栏  ›  技术社区  ›  Dan

Lua脚本结束TCP连接?

  •  0
  • Dan  · 技术社区  · 1 年前

    我用Lua编写了以下脚本,用于nmap:

    action = function()
        local target = "46.121.76.117"
    
        local sock = nmap.new_socket("tcp")
        sock:set_timeout(10)
    
        local status, err = sock:connect(target, 17)
    
        if not status then
            -- Failed to connect
            stdnse.debug1("Couldn't connect to %s on port %d; %s",target, 17, err)
            sock:close()
            return
        end
    

    问题是脚本没有等待1秒就立即打印:

    无法连接到端口17上的46.121.76.117;超时

    为什么? 我跑了 nmap 46.121.76.117 它显示端口 17 作为Open。

    1 回复  |  直到 1 年前
        1
  •  0
  •   Paul Kulchenko    1 年前

    如评论中所提到的, set_timeout 以毫秒为单位设置超时值,因此如果要将其设置为10秒,则需要调用 set_timeout(10*1000) 。这很可能解释了客户端在10ms后重置连接的结果。