diff --git a/kippo.cfg.dist b/kippo.cfg.dist index 22b8e2a..8188fc1 100644 --- a/kippo.cfg.dist +++ b/kippo.cfg.dist @@ -13,9 +13,11 @@ private_key = private.key password = 123456 ;out_addr = 0.0.0.0 ;sensor_name=myhostname +;fake_addr = 192.168.66.254 ;[database_mysql] ;host = localhost ;database = kippo ;username = kippo ;password = secret + diff --git a/kippo/core/honeypot.py b/kippo/core/honeypot.py index ac93a53..dabc384 100644 --- a/kippo/core/honeypot.py +++ b/kippo/core/honeypot.py @@ -160,7 +160,16 @@ class HoneyPotProtocol(recvline.HistoricRecvLine): # You are in a maze of twisty little passages, all alike p = self.terminal.transport.session.conn.transport.transport.getPeer() - self.clientIP = p.host + # real source IP of client + self.realClientIP = p.host + + # source IP of client in user visible reports (can be fake or real) + cfg = config() + if cfg.has_option('honeypot', 'fake_addr'): + self.clientIP = cfg.get('honeypot', 'fake_addr') + else: + self.clientIP = self.realClientIP + self.logintime = time.time() self.keyHandlers.update({