From f2c0869bc09c8476dea909604c90efd6aa9ef250 Mon Sep 17 00:00:00 2001 From: mindchasers Date: Thu, 2 May 2019 13:45:06 -0400 Subject: initial commit --- honeypot.py | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100755 honeypot.py (limited to 'honeypot.py') diff --git a/honeypot.py b/honeypot.py new file mode 100755 index 0000000..82893b6 --- /dev/null +++ b/honeypot.py @@ -0,0 +1,58 @@ +#!/usr/bin/env python3 + +""" + honeypot.py + + Copyright 2017,2018, 2019 (C) Mind Chasers Inc, + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +""" + +import sys +import argparse +from socket import socket, AF_INET, SOCK_STREAM + +VERSION = '0.1b' +welcome = b"Ubuntu 18.04.2 LTS\nserver login: " + +def send_email(src_address): + """ Todo: send an email if we're scanned / probed on this port """ + pass + +def honeypot(address,port=23): + """ create a single Threaded telnet listen port """ + try: + ski=socket(AF_INET,SOCK_STREAM) + ski.bind((address, port)) + ski.listen() + conn,addr = ski.accept() + print('honeypot has been visited by ' + addr[0]) + send_email(addr[0]) + conn.sendall(welcome) + while True: + data=conn.recv(1024) + if data == b'\r\n': + ski.close() + sys.exit() + except: + ski.close() + sys.exit() + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description='honeypot prototype', + epilog='Version: ' + str(VERSION)) + parser.add_argument('-a','--address',help='server ip address to use',action='store', required=True) + args = parser.parse_args() + + honeypot(args.address) -- cgit v1.2.3-8-gadcc