mirror of https://github.com/cowrie/cowrie.git
configurable authentication timeout
This commit is contained in:
parent
9d3fb5a657
commit
5aab2a797f
|
@ -96,13 +96,11 @@ txtcmds_path = txtcmds
|
||||||
# (default: 0)
|
# (default: 0)
|
||||||
#download_limit_size = 10485760
|
#download_limit_size = 10485760
|
||||||
|
|
||||||
|
|
||||||
# TTY logging will log a transcript of the complete terminal interaction in UML
|
# TTY logging will log a transcript of the complete terminal interaction in UML
|
||||||
# compatible format.
|
# compatible format.
|
||||||
# (default: true)
|
# (default: true)
|
||||||
ttylog = true
|
ttylog = true
|
||||||
|
|
||||||
|
|
||||||
# Default directory for TTY logs.
|
# Default directory for TTY logs.
|
||||||
# (default: ttylog_path = %(log_path)s/tty)
|
# (default: ttylog_path = %(log_path)s/tty)
|
||||||
ttylog_path = ${honeypot:log_path}/tty
|
ttylog_path = ${honeypot:log_path}/tty
|
||||||
|
@ -112,6 +110,11 @@ ttylog_path = ${honeypot:log_path}/tty
|
||||||
# (default: 180)
|
# (default: 180)
|
||||||
interactive_timeout = 180
|
interactive_timeout = 180
|
||||||
|
|
||||||
|
# Authentication Timeout
|
||||||
|
# The server disconnects after this time if the user has not successfully logged in. If the value is 0,
|
||||||
|
# there is no time limit. The default is 120 seconds.
|
||||||
|
authentication_timeout = 120
|
||||||
|
|
||||||
# EXPERIMENTAL: back-end to user for Cowrie, options: proxy or shell
|
# EXPERIMENTAL: back-end to user for Cowrie, options: proxy or shell
|
||||||
# a limited implementation is available for proxy, with request_exec functionality only
|
# a limited implementation is available for proxy, with request_exec functionality only
|
||||||
# (default: shell)
|
# (default: shell)
|
||||||
|
|
|
@ -15,6 +15,9 @@ import struct
|
||||||
import uuid
|
import uuid
|
||||||
from hashlib import md5
|
from hashlib import md5
|
||||||
import zlib
|
import zlib
|
||||||
|
from configparser import NoOptionError
|
||||||
|
|
||||||
|
from cowrie.core.config import CONFIG
|
||||||
|
|
||||||
from twisted.conch.ssh import transport
|
from twisted.conch.ssh import transport
|
||||||
from twisted.python import log, randbytes
|
from twisted.python import log, randbytes
|
||||||
|
@ -67,8 +70,12 @@ class HoneyPotSSHTransport(transport.SSHServerTransport, TimeoutMixin):
|
||||||
self.transport.write('{0}\r\n'.format(self.ourVersionString).encode('ascii'))
|
self.transport.write('{0}\r\n'.format(self.ourVersionString).encode('ascii'))
|
||||||
self.currentEncryptions = transport.SSHCiphers(b'none', b'none', b'none', b'none')
|
self.currentEncryptions = transport.SSHCiphers(b'none', b'none', b'none', b'none')
|
||||||
self.currentEncryptions.setKeys(b'', b'', b'', b'', b'', b'')
|
self.currentEncryptions.setKeys(b'', b'', b'', b'', b'', b'')
|
||||||
self.setTimeout(120)
|
|
||||||
self.logintime = time.time()
|
self.logintime = time.time()
|
||||||
|
try:
|
||||||
|
self.setTimeout(CONFIG.getint('honeypot', 'authentication_timeout'))
|
||||||
|
except NoOptionError:
|
||||||
|
self.setTimeout(120)
|
||||||
|
|
||||||
|
|
||||||
def sendKexInit(self):
|
def sendKexInit(self):
|
||||||
|
|
Loading…
Reference in New Issue