{
  "errors": [],
  "generated_at": "2026-07-27T18:21:36Z",
  "metrics": {
    "./bin/kamstrup_prober.py": {
      "CONFIDENCE.HIGH": 2,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 1,
      "SEVERITY.MEDIUM": 1,
      "SEVERITY.UNDEFINED": 0,
      "loc": 175,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./bin/start_protocol.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 27,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 1,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 53,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/attack_session.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 51,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/databus.py": {
      "CONFIDENCE.HIGH": 7,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 5,
      "SEVERITY.MEDIUM": 2,
      "SEVERITY.UNDEFINED": 0,
      "loc": 76,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/filesystem.py": {
      "CONFIDENCE.HIGH": 12,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 12,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 810,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/fs_utils.py": {
      "CONFIDENCE.HIGH": 1,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 1,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 217,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/internal_interface.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 37,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/log_worker.py": {
      "CONFIDENCE.HIGH": 1,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 1,
      "SEVERITY.UNDEFINED": 0,
      "loc": 94,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/loggers/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/loggers/helpers.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 11,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/loggers/hpfriends.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 42,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/loggers/json_log.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 29,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/loggers/sqlite_log.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 46,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/loggers/stix_transform.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 139,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/loggers/syslog.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 18,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/loggers/taxii_log.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 37,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/protocol_wrapper.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 24,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/session_manager.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 39,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/core/virtual_fs.py": {
      "CONFIDENCE.HIGH": 5,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 5,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 135,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/emulators/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/emulators/kamstrup/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/emulators/kamstrup/usage_simulator.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 88,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/emulators/misc/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/emulators/misc/random.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 12,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/emulators/misc/sysinfo.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 45,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/emulators/misc/uptime.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 11,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/emulators/sensors/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/IEC104/DeviceDataController.py": {
      "CONFIDENCE.HIGH": 6,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 6,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 124,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/IEC104/IEC104.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 662,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/IEC104/IEC104_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 120,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/IEC104/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/IEC104/errors.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 14,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/IEC104/frames.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 765,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/IEC104/i_frames_check.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 177,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/IEC104/register.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 8,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 28,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/bacnet/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/bacnet/bacnet_app.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 345,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/bacnet/bacnet_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 74,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/enip/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/enip/enip_server.py": {
      "CONFIDENCE.HIGH": 12,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 12,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 501,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/ftp/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/ftp/ftp_base_handler.py": {
      "CONFIDENCE.HIGH": 2,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 2,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 532,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/ftp/ftp_handler.py": {
      "CONFIDENCE.HIGH": 6,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 6,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 801,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/ftp/ftp_server.py": {
      "CONFIDENCE.HIGH": 1,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 3,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 4,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 257,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/ftp/ftp_utils.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 228,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/guardian_ast/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/guardian_ast/guardian_ast_server.py": {
      "CONFIDENCE.HIGH": 4,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 4,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 430,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/http/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/http/command_responder.py": {
      "CONFIDENCE.HIGH": 3,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 1,
      "SEVERITY.MEDIUM": 2,
      "SEVERITY.UNDEFINED": 0,
      "loc": 749,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/http/web_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 23,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/ipmi/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/ipmi/fakebmc.py": {
      "CONFIDENCE.HIGH": 1,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 1,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 49,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/ipmi/fakesession.py": {
      "CONFIDENCE.HIGH": 4,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 3,
      "SEVERITY.LOW": 1,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 348,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/ipmi/ipmi_server.py": {
      "CONFIDENCE.HIGH": 2,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 2,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 507,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/kamstrup_management/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/kamstrup_management/command_responder.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 45,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/kamstrup_management/commands.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 3,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 3,
      "SEVERITY.UNDEFINED": 0,
      "loc": 648,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/kamstrup_management/kamstrup_management_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 75,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/kamstrup_meter/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/kamstrup_meter/command_responder.py": {
      "CONFIDENCE.HIGH": 2,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 2,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 41,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/kamstrup_meter/decoder_382.py": {
      "CONFIDENCE.HIGH": 6,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 6,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 168,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/kamstrup_meter/kamstrup_constants.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 89,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/kamstrup_meter/kamstrup_server.py": {
      "CONFIDENCE.HIGH": 2,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 2,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 94,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/kamstrup_meter/messages.py": {
      "CONFIDENCE.HIGH": 1,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 1,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 106,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/kamstrup_meter/register.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 7,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/kamstrup_meter/request_parser.py": {
      "CONFIDENCE.HIGH": 1,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 1,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 69,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/modbus/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 1,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/modbus/modbus_block_databus_mediator.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 29,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/modbus/modbus_server.py": {
      "CONFIDENCE.HIGH": 1,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 1,
      "SEVERITY.UNDEFINED": 0,
      "loc": 161,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/modbus/slave.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 131,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/modbus/slave_db.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 100,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/proxy/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/proxy/ascii_decoder.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 8,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/proxy/proxy.py": {
      "CONFIDENCE.HIGH": 3,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 3,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 175,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/s7comm/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/s7comm/cotp.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 134,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/s7comm/exceptions.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 14,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/s7comm/s7.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 322,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/s7comm/s7_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 248,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/s7comm/tpkt.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 24,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/snmp/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/snmp/command_responder.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 135,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/snmp/conpot_cmdrsp.py": {
      "CONFIDENCE.HIGH": 1,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 1,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 250,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/snmp/databus_mediator.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 76,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/snmp/gevent_transport.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 78,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/snmp/snmp_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 126,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/tftp/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/tftp/tftp_handler.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 205,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/protocols/tftp/tftp_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 144,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/data/kamstrup_management_data.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 38,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/helpers/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/helpers/s7comm_client.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 375,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/helpers/snmp_client.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 1,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 1,
      "SEVERITY.UNDEFINED": 0,
      "loc": 95,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_attack_session.py": {
      "CONFIDENCE.HIGH": 23,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 23,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 118,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_bacnet_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 137,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_docs.py": {
      "CONFIDENCE.HIGH": 2,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 2,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 16,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_enip_server.py": {
      "CONFIDENCE.HIGH": 1,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 1,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 177,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_ftp.py": {
      "CONFIDENCE.HIGH": 3,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 6,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 3,
      "SEVERITY.LOW": 6,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 432,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_greenlet.py": {
      "CONFIDENCE.HIGH": 17,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 17,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 85,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_guardian_ast.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 135,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_http_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 10,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 10,
      "SEVERITY.UNDEFINED": 0,
      "loc": 171,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_iec104_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 176,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_ipmi_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 98,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_kamstrup_decoder.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 51,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_kamstrup_management.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 167,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_kamstrup_meter.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 51,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_logger_hpfriends.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 1,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 1,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 23,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_logger_json.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 1,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 1,
      "SEVERITY.UNDEFINED": 0,
      "loc": 48,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_logger_taxii.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 74,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_modbus_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 137,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_protocol_wrapper.py": {
      "CONFIDENCE.HIGH": 7,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 7,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 22,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_protocols.py": {
      "CONFIDENCE.HIGH": 2,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 2,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 15,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_proxy.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 109,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_s7_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 62,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_snmp_command_responder.py": {
      "CONFIDENCE.HIGH": 3,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 1,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 3,
      "SEVERITY.MEDIUM": 1,
      "SEVERITY.UNDEFINED": 0,
      "loc": 18,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_snmp_server.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 59,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_tftp.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 58,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_utils_ext_ip.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 31,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/tests/test_vfs.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 411,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/utils/__init__.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 0,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/utils/ext_ip.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 39,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/utils/greenlet.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 50,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./conpot/utils/networking.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 62,
      "nosec": 0,
      "skipped_tests": 0
    },
    "./docs/source/conf.py": {
      "CONFIDENCE.HIGH": 0,
      "CONFIDENCE.LOW": 0,
      "CONFIDENCE.MEDIUM": 0,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 0,
      "SEVERITY.LOW": 0,
      "SEVERITY.MEDIUM": 0,
      "SEVERITY.UNDEFINED": 0,
      "loc": 37,
      "nosec": 0,
      "skipped_tests": 0
    },
    "_totals": {
      "CONFIDENCE.HIGH": 144,
      "CONFIDENCE.LOW": 10,
      "CONFIDENCE.MEDIUM": 16,
      "CONFIDENCE.UNDEFINED": 0,
      "SEVERITY.HIGH": 9,
      "SEVERITY.LOW": 138,
      "SEVERITY.MEDIUM": 23,
      "SEVERITY.UNDEFINED": 0,
      "loc": 16239,
      "nosec": 0,
      "skipped_tests": 0
    }
  },
  "results": [
    {
      "code": "25 import crc16\n26 import xml.dom.minidom\n27 from conpot.protocols.kamstrup_meter import kamstrup_constants\n",
      "col_offset": 0,
      "end_col_offset": 22,
      "filename": "./bin/kamstrup_prober.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 20,
        "link": "https://cwe.mitre.org/data/definitions/20.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Using xml.dom.minidom to parse untrusted XML data is known to be vulnerable to XML attacks. Replace xml.dom.minidom with the equivalent defusedxml package, or make sure defusedxml.defuse_stdlib() is called.",
      "line_number": 26,
      "line_range": [
        26
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_imports.html#b408-import-xml-minidom",
      "test_id": "B408",
      "test_name": "blacklist"
    },
    {
      "code": "194 \n195     parsed_xml = xml.dom.minidom.parseString(config_xml)\n196     pretty_xml = parsed_xml.toprettyxml()\n",
      "col_offset": 17,
      "end_col_offset": 56,
      "filename": "./bin/kamstrup_prober.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 20,
        "link": "https://cwe.mitre.org/data/definitions/20.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Using xml.dom.minidom.parseString to parse untrusted XML data is known to be vulnerable to XML attacks. Replace xml.dom.minidom.parseString with its defusedxml equivalent function or make sure defusedxml.defuse_stdlib() is called",
      "line_number": 195,
      "line_range": [
        195
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b313-b320-xml-bad-minidom",
      "test_id": "B318",
      "test_name": "blacklist"
    },
    {
      "code": "41         logger.debug(\"DataBus: Get value from key: [%s]\", key)\n42         assert key in self._data\n43         item = self._data[key]\n",
      "col_offset": 8,
      "end_col_offset": 32,
      "filename": "./conpot/core/databus.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 42,
      "line_range": [
        42
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "68     def observe_value(self, key, callback):\n69         assert hasattr(callback, \"__call__\")\n70         assert len(\n",
      "col_offset": 8,
      "end_col_offset": 44,
      "filename": "./conpot/core/databus.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 69,
      "line_range": [
        69
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "69         assert hasattr(callback, \"__call__\")\n70         assert len(\n71             inspect.getfullargspec(callback)[0]\n72         )  # depreciated in py3.5, un-depreciated in py3.6\n73         if key not in self._observer_map:\n",
      "col_offset": 8,
      "end_col_offset": 9,
      "filename": "./conpot/core/databus.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 70,
      "line_range": [
        70,
        71,
        72
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "78         self.reset()\n79         assert self.initialized.isSet() is False\n80         logger.debug(\"Initializing databus using %s.\", config_file)\n",
      "col_offset": 8,
      "end_col_offset": 48,
      "filename": "./conpot/core/databus.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 79,
      "line_range": [
        79
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "86             value_type = str(entry.xpath(\"./value/@type\")[0])\n87             assert key not in self._data\n88             logging.debug(\"Initializing %s with %s as a %s.\", key, value, value_type)\n",
      "col_offset": 12,
      "end_col_offset": 40,
      "filename": "./conpot/core/databus.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 87,
      "line_range": [
        87
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "89             if value_type == \"value\":\n90                 self.set_value(key, eval(value))\n91             elif value_type == \"function\":\n",
      "col_offset": 36,
      "end_col_offset": 47,
      "filename": "./conpot/core/databus.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 78,
        "link": "https://cwe.mitre.org/data/definitions/78.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Use of possibly insecure function - consider using safer ast.literal_eval.",
      "line_number": 90,
      "line_range": [
        90
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b307-eval",
      "test_id": "B307",
      "test_name": "blacklist"
    },
    {
      "code": "97                     # eval param to list\n98                     params = eval(params[0])\n99                     self.set_value(key, _class(*(tuple(params))))\n",
      "col_offset": 29,
      "end_col_offset": 44,
      "filename": "./conpot/core/databus.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 78,
        "link": "https://cwe.mitre.org/data/definitions/78.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Use of possibly insecure function - consider using safer ast.literal_eval.",
      "line_number": 98,
      "line_range": [
        98
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b307-eval",
      "test_id": "B307",
      "test_name": "blacklist"
    },
    {
      "code": "252         \"\"\"\n253         assert path and isinstance(path, str)\n254         path = self.norm_path(path)\n",
      "col_offset": 8,
      "end_col_offset": 45,
      "filename": "./conpot/core/filesystem.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 253,
      "line_range": [
        253
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "262                 try:\n263                     assert self._cache[path]\n264                 except (AssertionError, KeyError):\n",
      "col_offset": 20,
      "end_col_offset": 44,
      "filename": "./conpot/core/filesystem.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 263,
      "line_range": [
        263
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "596         \"\"\"Store all user related data for the file system.\"\"\"\n597         assert name and isinstance(name, str)\n598         self._users[uid] = {\"user\": name}\n",
      "col_offset": 8,
      "end_col_offset": 45,
      "filename": "./conpot/core/filesystem.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 597,
      "line_range": [
        597
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "613         \"\"\"\n614         assert name and isinstance(name, str)\n615         self._grps[gid] = {\"group\": name}\n",
      "col_offset": 8,
      "end_col_offset": 45,
      "filename": "./conpot/core/filesystem.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 614,
      "line_range": [
        614
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "629         try:\n630             assert gid in self._grps.keys()\n631             for i in uids:\n",
      "col_offset": 12,
      "end_col_offset": 43,
      "filename": "./conpot/core/filesystem.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 630,
      "line_range": [
        630
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "661         try:\n662             assert isinstance(uid, int) and isinstance(gid, int)\n663         except AssertionError:\n",
      "col_offset": 12,
      "end_col_offset": 64,
      "filename": "./conpot/core/filesystem.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 662,
      "line_range": [
        662
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "665         if self.isdir(path) or self.isfile(path):\n666             assert self._grps[gid] and self._users[uid]\n667             chown_cache = {\n",
      "col_offset": 12,
      "end_col_offset": 55,
      "filename": "./conpot/core/filesystem.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 666,
      "line_range": [
        666
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "679                 for _path, _ in sub_dir.walk.info():\n680                     assert self._cache[self.norm_path(path + _path)]\n681                     self.setinfo(path + _path, chown_cache)\n",
      "col_offset": 20,
      "end_col_offset": 68,
      "filename": "./conpot/core/filesystem.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 680,
      "line_range": [
        680
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "717         \"\"\"\n718         assert path, isinstance(path, str)\n719         self.setinfo(self.norm_path(path), {})\n",
      "col_offset": 8,
      "end_col_offset": 42,
      "filename": "./conpot/core/filesystem.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 718,
      "line_range": [
        718
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "725         \"\"\"\n726         assert path, isinstance(path, str)\n727         self.setinfo(self.norm_path(path), {})\n",
      "col_offset": 8,
      "end_col_offset": 42,
      "filename": "./conpot/core/filesystem.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 726,
      "line_range": [
        726
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "743         \"\"\"\n744         assert isinstance(basedir, str), basedir\n745         basedir += \"/\" if basedir[-1:] != \"/\" else basedir\n",
      "col_offset": 8,
      "end_col_offset": 48,
      "filename": "./conpot/core/filesystem.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 744,
      "line_range": [
        744
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "872         \"\"\"\n873         assert isinstance(mode, str) or isinstance(mode, int)\n874         if isinstance(mode, str):\n",
      "col_offset": 8,
      "end_col_offset": 61,
      "filename": "./conpot/core/filesystem.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 873,
      "line_range": [
        873
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "151         try:\n152             assert isinstance(perms, Permissions)\n153             self._default_perms = perms\n",
      "col_offset": 12,
      "end_col_offset": 49,
      "filename": "./conpot/core/fs_utils.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 152,
      "line_range": [
        152
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "61             secret = config.get(\"hpfriends\", \"secret\")\n62             channels = eval(config.get(\"hpfriends\", \"channels\"))\n63             try:\n",
      "col_offset": 23,
      "end_col_offset": 64,
      "filename": "./conpot/core/log_worker.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 78,
        "link": "https://cwe.mitre.org/data/definitions/78.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Use of possibly insecure function - consider using safer ast.literal_eval.",
      "line_number": 62,
      "line_range": [
        62
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b307-eval",
      "test_id": "B307",
      "test_name": "blacklist"
    },
    {
      "code": "72             try:\n73                 assert data_fs_path and isinstance(data_fs_path, str)\n74                 self.data_fs = open_fs(\n",
      "col_offset": 16,
      "end_col_offset": 69,
      "filename": "./conpot/core/virtual_fs.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 73,
      "line_range": [
        73
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "125         \"\"\"\n126         assert isinstance(protocol_name, str) and protocol_name\n127         assert isinstance(data_fs_subdir, str) and data_fs_subdir\n",
      "col_offset": 8,
      "end_col_offset": 63,
      "filename": "./conpot/core/virtual_fs.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 126,
      "line_range": [
        126
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "126         assert isinstance(protocol_name, str) and protocol_name\n127         assert isinstance(data_fs_subdir, str) and data_fs_subdir\n128         assert isinstance(vfs_dst_path, str) and vfs_dst_path\n",
      "col_offset": 8,
      "end_col_offset": 65,
      "filename": "./conpot/core/virtual_fs.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 127,
      "line_range": [
        127
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "127         assert isinstance(data_fs_subdir, str) and data_fs_subdir\n128         assert isinstance(vfs_dst_path, str) and vfs_dst_path\n129         if src_path:\n",
      "col_offset": 8,
      "end_col_offset": 61,
      "filename": "./conpot/core/virtual_fs.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 128,
      "line_range": [
        128
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "129         if src_path:\n130             assert isinstance(src_path, str)\n131             if not os.path.isdir(src_path):\n",
      "col_offset": 12,
      "end_col_offset": 44,
      "filename": "./conpot/core/virtual_fs.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 130,
      "line_range": [
        130
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "42                 splt_addr1, splt_addr2 = address.split(\"_\")\n43                 assert 0 <= int(splt_addr1) <= 65535 and 0 <= int(splt_addr2) <= 255, (\n44                     \"Address %s not allowed. 0..65535_0..255\" % address\n45                 )\n46                 databuskey = register.xpath(\"./value/text()\")[0]\n",
      "col_offset": 16,
      "end_col_offset": 17,
      "filename": "./conpot/protocols/IEC104/DeviceDataController.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 43,
      "line_range": [
        43,
        44,
        45
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "59                 # simple data type checks\n60                 assert not (\n61                     categ_id in (1, 2, 30, 45, 58) and val not in (0, 1)\n62                 ), \"Value for obj %s not allowed with datatype %s\" % (address, categ_id)\n63                 assert not (\n",
      "col_offset": 16,
      "end_col_offset": 88,
      "filename": "./conpot/protocols/IEC104/DeviceDataController.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 60,
      "line_range": [
        60,
        61,
        62
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "62                 ), \"Value for obj %s not allowed with datatype %s\" % (address, categ_id)\n63                 assert not (\n64                     categ_id in (3, 4, 31, 46, 59) and val not in (0, 1, 2, 3)\n65                 ), \"Value for obj %s not allowed with datatype %s\" % (address, categ_id)\n66                 assert not (\n",
      "col_offset": 16,
      "end_col_offset": 88,
      "filename": "./conpot/protocols/IEC104/DeviceDataController.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 63,
      "line_range": [
        63,
        64,
        65
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "65                 ), \"Value for obj %s not allowed with datatype %s\" % (address, categ_id)\n66                 assert not (\n67                     categ_id in (11, 12, 49, 62) and -32768 >= val >= 32767\n68                 ), \"Value for obj %s not allowed with datatype %s\" % (address, categ_id)\n69                 iec104_register = IEC104Register(categ_id, address, val, rel)\n",
      "col_offset": 16,
      "end_col_offset": 88,
      "filename": "./conpot/protocols/IEC104/DeviceDataController.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 66,
      "line_range": [
        66,
        67,
        68
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "69                 iec104_register = IEC104Register(categ_id, address, val, rel)\n70                 assert address not in self.registers\n71                 self.registers[address] = iec104_register\n",
      "col_offset": 16,
      "end_col_offset": 52,
      "filename": "./conpot/protocols/IEC104/DeviceDataController.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 70,
      "line_range": [
        70
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "77             rel = self.registers[elem].relation\n78             assert not (\n79                 rel != \"\" and rel not in self.registers\n80             ), \"Relation object doesn't exist\"\n81 \n",
      "col_offset": 12,
      "end_col_offset": 46,
      "filename": "./conpot/protocols/IEC104/DeviceDataController.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 78,
      "line_range": [
        78,
        79,
        80
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "178             try:\n179                 assert (\n180                     address\n181                 ), \"EtherNet/IP CIP server for TCP/IP must be provided a peer address\"\n182                 stats, connkey = self.stats_for(address)\n",
      "col_offset": 16,
      "end_col_offset": 86,
      "filename": "./conpot/protocols/enip/enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 179,
      "line_range": [
        179,
        180,
        181
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "271                             # status.  A non-zero status indicates the end of the session.\n272                             assert (\n273                                 \"response.enip\" in data\n274                             ), \"Expected EtherNet/IP response; none found\"\n275                             if (\n",
      "col_offset": 28,
      "end_col_offset": 74,
      "filename": "./conpot/protocols/enip/enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 272,
      "line_range": [
        272,
        273,
        274
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "281                                 )\n282                                 assert (\n283                                     data.response.enip.status\n284                                 ), \"If no/empty response payload, expected non-zero EtherNet/IP status\"\n285 \n",
      "col_offset": 32,
      "end_col_offset": 103,
      "filename": "./conpot/protocols/enip/enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 282,
      "line_range": [
        282,
        283,
        284
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "402                                 continue\n403                             assert not addr, \"Incomplete UDP request from client %r\" % (\n404                                 addr\n405                             )\n406                             msg = None\n",
      "col_offset": 28,
      "end_col_offset": 29,
      "filename": "./conpot/protocols/enip/enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 403,
      "line_range": [
        403,
        404,
        405
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "443                             # ignoring the peer's packets.\n444                             assert stats and not stats.get(\n445                                 \"eof\"\n446                             ), \"Ignoring UDP request from client %r: %r\" % (addr, msg)\n447                             stats[\"received\"] += len(msg)\n",
      "col_offset": 28,
      "end_col_offset": 86,
      "filename": "./conpot/protocols/enip/enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 444,
      "line_range": [
        444,
        445,
        446
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "456                     # Terminal state and EtherNet/IP header recognized; process and return response\n457                     assert stats\n458                     if \"request\" in data:\n",
      "col_offset": 20,
      "end_col_offset": 32,
      "filename": "./conpot/protocols/enip/enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 457,
      "line_range": [
        457
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "467                         # status.  A non-zero status indicates the end of the session.\n468                         assert (\n469                             \"response.enip\" in data\n470                         ), \"Expected EtherNet/IP response; none found\"\n471                         if (\n",
      "col_offset": 24,
      "end_col_offset": 70,
      "filename": "./conpot/protocols/enip/enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 468,
      "line_range": [
        468,
        469,
        470
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "477                             )\n478                             assert (\n479                                 data.response.enip.status\n480                             ), \"If no/empty response payload, expected non-zero EtherNet/IP status\"\n481 \n",
      "col_offset": 28,
      "end_col_offset": 99,
      "filename": "./conpot/protocols/enip/enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 478,
      "line_range": [
        478,
        479,
        480
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "532 \n533             assert tag_type in typenames, \"Invalid tag type; must be one of %r\" % list(\n534                 typenames\n535             )\n536             tag_class, _, f = typenames[tag_type]\n",
      "col_offset": 12,
      "end_col_offset": 13,
      "filename": "./conpot/protocols/enip/enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 533,
      "line_range": [
        533,
        534,
        535
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "545                 segments, _, cnt = device.parse_path_elements(\"@\" + tag_address)\n546                 assert (\n547                     not cnt or cnt == 1\n548                 ), \"A Tag may be specified to indicate a single element: %s\" % (\n549                     tag_address\n550                 )\n551                 path = {\"segment\": segments}\n",
      "col_offset": 16,
      "end_col_offset": 17,
      "filename": "./conpot/protocols/enip/enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 546,
      "line_range": [
        546,
        547,
        548,
        549,
        550
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "552                 cls, ins, att = device.resolve(path, attribute=True)\n553                 assert ins > 0, \"Cannot specify the Class' instance for a tag's address\"\n554                 elm = device.resolve_element(path)\n",
      "col_offset": 16,
      "end_col_offset": 88,
      "filename": "./conpot/protocols/enip/enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 553,
      "line_range": [
        553
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "560                     if device.resolve(te[\"path\"], attribute=True) == (cls, ins, att):\n561                         assert (\n562                             te.attribute.parser.__class__ is tag_class\n563                             and len(te.attribute) == tag_size\n564                         ), \"Incompatible Attribute types for tags %r and %r\" % (\n565                             tn,\n566                             tag_name,\n567                         )\n568                         attribute = te.attribute\n",
      "col_offset": 24,
      "end_col_offset": 25,
      "filename": "./conpot/protocols/enip/enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 561,
      "line_range": [
        561,
        562,
        563,
        564,
        565,
        566,
        567
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "376         try:\n377             assert self.cli_port and self.cli_port and self._data_sock\n378             if self._data_channel is True:\n",
      "col_offset": 12,
      "end_col_offset": 70,
      "filename": "./conpot/protocols/ftp/ftp_base_handler.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 377,
      "line_range": [
        377
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "565                 else:\n566                     assert _file_pos != 0\n567                     # must seek file. This is done in append or rest(resume transfer) command.\n",
      "col_offset": 20,
      "end_col_offset": 41,
      "filename": "./conpot/protocols/ftp/ftp_base_handler.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 566,
      "line_range": [
        566
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "149         try:\n150             assert isinstance(pwd, str), pwd\n151             _pwd = '257 \"{}\" is the current directory.'.format(pwd)\n",
      "col_offset": 12,
      "end_col_offset": 44,
      "filename": "./conpot/protocols/ftp/ftp_handler.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 150,
      "line_range": [
        150
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "409                 with self.config.vfs.check_access(path=path, user=self._uid, perms=\"w\"):\n410                     assert isinstance(path, str)\n411                     if path == \"/\":\n",
      "col_offset": 20,
      "end_col_offset": 48,
      "filename": "./conpot/protocols/ftp/ftp_handler.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 410,
      "line_range": [
        410
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "432         try:\n433             assert isinstance(dst_path, str)\n434             if not self._rnfr:\n",
      "col_offset": 12,
      "end_col_offset": 44,
      "filename": "./conpot/protocols/ftp/ftp_handler.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 433,
      "line_range": [
        433
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "466             with self.config.vfs.check_access(path=path, user=self._uid, perms=\"rwx\"):\n467                 assert len(mode) in (3, 4)\n468                 for x in mode:\n",
      "col_offset": 16,
      "end_col_offset": 42,
      "filename": "./conpot/protocols/ftp/ftp_handler.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 467,
      "line_range": [
        467
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "468                 for x in mode:\n469                     assert 0 <= int(x) <= 7\n470                 mode = int(mode, 8)\n",
      "col_offset": 20,
      "end_col_offset": 43,
      "filename": "./conpot/protocols/ftp/ftp_handler.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 469,
      "line_range": [
        469
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "691                 else:\n692                     assert cmd == \"STOR\"\n693                     _file_seek = 0\n",
      "col_offset": 20,
      "end_col_offset": 40,
      "filename": "./conpot/protocols/ftp/ftp_handler.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 692,
      "line_range": [
        692
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "94         for i in self.enabled_commands:\n95             assert i in self.all_commands\n96         self.device_type = dom.xpath(\"//ftp/device_info/device_type/text()\")[0]\n",
      "col_offset": 12,
      "end_col_offset": 41,
      "filename": "./conpot/protocols/ftp/ftp_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 95,
      "line_range": [
        95
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "129                 \"grp\": grp,\n130                 \"password\": \"\",\n131             }\n132 \n133         # As a last step, get VFS related data.\n134         self.root_path = dom.xpath(\"//ftp/ftp_vfs/path/text()\")[0]\n135         self.data_fs_subdir = dom.xpath(\"//ftp/ftp_vfs/data_fs_subdir/text()\")[0]\n",
      "col_offset": 16,
      "end_col_offset": 26,
      "filename": "./conpot/protocols/ftp/ftp_server.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 259,
        "link": "https://cwe.mitre.org/data/definitions/259.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Possible hardcoded password: ''",
      "line_number": 130,
      "line_range": [
        127,
        128,
        129,
        130,
        131
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b105_hardcoded_password_string.html",
      "test_id": "B105",
      "test_name": "hardcoded_password_string"
    },
    {
      "code": "264         # TODO: Get users from the template.\n265         self.user_db[13] = {\"uname\": \"nobody\", \"grp\": \"45:ftp\", \"password\": \"nobody\"}\n266         # Toggle enable/disable anonymous user.\n",
      "col_offset": 64,
      "end_col_offset": 74,
      "filename": "./conpot/protocols/ftp/ftp_server.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 259,
        "link": "https://cwe.mitre.org/data/definitions/259.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Possible hardcoded password: 'nobody'",
      "line_number": 265,
      "line_range": [
        265
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b105_hardcoded_password_string.html",
      "test_id": "B105",
      "test_name": "hardcoded_password_string"
    },
    {
      "code": "266         # Toggle enable/disable anonymous user.\n267         self.user_db[22] = {\"uname\": \"anonymous\", \"grp\": \"45:ftp\", \"password\": \"\"}\n268         # Let us create groups from the populated users.\n",
      "col_offset": 67,
      "end_col_offset": 77,
      "filename": "./conpot/protocols/ftp/ftp_server.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 259,
        "link": "https://cwe.mitre.org/data/definitions/259.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Possible hardcoded password: ''",
      "line_number": 267,
      "line_range": [
        267
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b105_hardcoded_password_string.html",
      "test_id": "B105",
      "test_name": "hardcoded_password_string"
    },
    {
      "code": "73         vol1 = self.databus.get_value(\"vol1\")\n74         vol1tc = random.randint(vol1, vol1 + 200)\n75         vol2 = self.databus.get_value(\"vol2\")\n",
      "col_offset": 17,
      "end_col_offset": 49,
      "filename": "./conpot/protocols/guardian_ast/guardian_ast_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 330,
        "link": "https://cwe.mitre.org/data/definitions/330.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Standard pseudo-random generators are not suitable for security/cryptographic purposes.",
      "line_number": 74,
      "line_range": [
        74
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b311-random",
      "test_id": "B311",
      "test_name": "blacklist"
    },
    {
      "code": "75         vol2 = self.databus.get_value(\"vol2\")\n76         vol2tc = random.randint(vol2, vol2 + 200)\n77         vol3 = self.databus.get_value(\"vol3\")\n",
      "col_offset": 17,
      "end_col_offset": 49,
      "filename": "./conpot/protocols/guardian_ast/guardian_ast_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 330,
        "link": "https://cwe.mitre.org/data/definitions/330.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Standard pseudo-random generators are not suitable for security/cryptographic purposes.",
      "line_number": 76,
      "line_range": [
        76
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b311-random",
      "test_id": "B311",
      "test_name": "blacklist"
    },
    {
      "code": "77         vol3 = self.databus.get_value(\"vol3\")\n78         vol3tc = random.randint(vol3, vol3 + 200)\n79         vol4 = self.databus.get_value(\"vol4\")\n",
      "col_offset": 17,
      "end_col_offset": 49,
      "filename": "./conpot/protocols/guardian_ast/guardian_ast_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 330,
        "link": "https://cwe.mitre.org/data/definitions/330.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Standard pseudo-random generators are not suitable for security/cryptographic purposes.",
      "line_number": 78,
      "line_range": [
        78
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b311-random",
      "test_id": "B311",
      "test_name": "blacklist"
    },
    {
      "code": "79         vol4 = self.databus.get_value(\"vol4\")\n80         vol4tc = random.randint(vol4, vol4 + 200)\n81 \n",
      "col_offset": 17,
      "end_col_offset": 49,
      "filename": "./conpot/protocols/guardian_ast/guardian_ast_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 330,
        "link": "https://cwe.mitre.org/data/definitions/330.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Standard pseudo-random generators are not suitable for security/cryptographic purposes.",
      "line_number": 80,
      "line_range": [
        80
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b311-random",
      "test_id": "B311",
      "test_name": "blacklist"
    },
    {
      "code": "193                 try:\n194                     return str(eval(key))\n195                 except Exception as e:\n",
      "col_offset": 31,
      "end_col_offset": 40,
      "filename": "./conpot/protocols/http/command_responder.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 78,
        "link": "https://cwe.mitre.org/data/definitions/78.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Use of possibly insecure function - consider using safer ast.literal_eval.",
      "line_number": 194,
      "line_range": [
        194
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b307-eval",
      "test_id": "B307",
      "test_name": "blacklist"
    },
    {
      "code": "1030                     try:\n1031                         result = eval(key)\n1032                     except Exception as e:\n",
      "col_offset": 33,
      "end_col_offset": 42,
      "filename": "./conpot/protocols/http/command_responder.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 78,
        "link": "https://cwe.mitre.org/data/definitions/78.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Use of possibly insecure function - consider using safer ast.literal_eval.",
      "line_number": 1031,
      "line_range": [
        1031
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b307-eval",
      "test_id": "B307",
      "test_name": "blacklist"
    },
    {
      "code": "1166             # both boundaries found. Assume random latency between lbound and ubound\n1167             gevent.sleep(random.uniform(float(lbound), float(ubound)))\n1168 \n",
      "col_offset": 25,
      "end_col_offset": 69,
      "filename": "./conpot/protocols/http/command_responder.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 330,
        "link": "https://cwe.mitre.org/data/definitions/330.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Standard pseudo-random generators are not suitable for security/cryptographic purposes.",
      "line_number": 1167,
      "line_range": [
        1167
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b311-random",
      "test_id": "B311",
      "test_name": "blacklist"
    },
    {
      "code": "19 \n20 from pyghmi.ipmi.bmc import Bmc\n21 \n",
      "col_offset": 0,
      "end_col_offset": 31,
      "filename": "./conpot/protocols/ipmi/fakebmc.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 319,
        "link": "https://cwe.mitre.org/data/definitions/319.html"
      },
      "issue_severity": "HIGH",
      "issue_text": "An IPMI-related module is being imported. IPMI is considered insecure. Use an encrypted protocol.",
      "line_number": 20,
      "line_range": [
        20
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_imports.html#b415-import-pyghmi",
      "test_id": "B415",
      "test_name": "blacklist"
    },
    {
      "code": "23 \n24 import pyghmi.exceptions as exc\n25 import pyghmi.ipmi.private.constants as constants\n",
      "col_offset": 0,
      "end_col_offset": 31,
      "filename": "./conpot/protocols/ipmi/fakesession.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 319,
        "link": "https://cwe.mitre.org/data/definitions/319.html"
      },
      "issue_severity": "HIGH",
      "issue_text": "An IPMI-related module is being imported. IPMI is considered insecure. Use an encrypted protocol.",
      "line_number": 24,
      "line_range": [
        24
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_imports.html#b415-import-pyghmi",
      "test_id": "B415",
      "test_name": "blacklist"
    },
    {
      "code": "24 import pyghmi.exceptions as exc\n25 import pyghmi.ipmi.private.constants as constants\n26 from pyghmi.ipmi.private.session import Session\n",
      "col_offset": 0,
      "end_col_offset": 49,
      "filename": "./conpot/protocols/ipmi/fakesession.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 319,
        "link": "https://cwe.mitre.org/data/definitions/319.html"
      },
      "issue_severity": "HIGH",
      "issue_text": "An IPMI-related module is being imported. IPMI is considered insecure. Use an encrypted protocol.",
      "line_number": 25,
      "line_range": [
        25
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_imports.html#b415-import-pyghmi",
      "test_id": "B415",
      "test_name": "blacklist"
    },
    {
      "code": "25 import pyghmi.ipmi.private.constants as constants\n26 from pyghmi.ipmi.private.session import Session\n27 \n",
      "col_offset": 0,
      "end_col_offset": 47,
      "filename": "./conpot/protocols/ipmi/fakesession.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 319,
        "link": "https://cwe.mitre.org/data/definitions/319.html"
      },
      "issue_severity": "HIGH",
      "issue_text": "An IPMI-related module is being imported. IPMI is considered insecure. Use an encrypted protocol.",
      "line_number": 26,
      "line_range": [
        26
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_imports.html#b415-import-pyghmi",
      "test_id": "B415",
      "test_name": "blacklist"
    },
    {
      "code": "202         response[\"data\"] = payload\n203         self.timeout = 0.5 + (0.5 * random.random())\n204         self.ipmicallback(response)\n",
      "col_offset": 36,
      "end_col_offset": 51,
      "filename": "./conpot/protocols/ipmi/fakesession.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 330,
        "link": "https://cwe.mitre.org/data/definitions/330.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Standard pseudo-random generators are not suitable for security/cryptographic purposes.",
      "line_number": 203,
      "line_range": [
        203
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b311-random",
      "test_id": "B311",
      "test_name": "blacklist"
    },
    {
      "code": "20 import struct\n21 import pyghmi.ipmi.private.constants as constants\n22 import pyghmi.ipmi.private.serversession as serversession\n",
      "col_offset": 0,
      "end_col_offset": 49,
      "filename": "./conpot/protocols/ipmi/ipmi_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 319,
        "link": "https://cwe.mitre.org/data/definitions/319.html"
      },
      "issue_severity": "HIGH",
      "issue_text": "An IPMI-related module is being imported. IPMI is considered insecure. Use an encrypted protocol.",
      "line_number": 21,
      "line_range": [
        21
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_imports.html#b415-import-pyghmi",
      "test_id": "B415",
      "test_name": "blacklist"
    },
    {
      "code": "21 import pyghmi.ipmi.private.constants as constants\n22 import pyghmi.ipmi.private.serversession as serversession\n23 import uuid\n",
      "col_offset": 0,
      "end_col_offset": 57,
      "filename": "./conpot/protocols/ipmi/ipmi_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 319,
        "link": "https://cwe.mitre.org/data/definitions/319.html"
      },
      "issue_severity": "HIGH",
      "issue_text": "An IPMI-related module is being imported. IPMI is considered insecure. Use an encrypted protocol.",
      "line_number": 22,
      "line_range": [
        22
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_imports.html#b415-import-pyghmi",
      "test_id": "B415",
      "test_name": "blacklist"
    },
    {
      "code": "342 \n343         if databus.get_value(\"kap_b_server_ip\") == \"0.0.0.0\":\n344             return self.CMD_OUTPUT_SINGLE.format(\n",
      "col_offset": 51,
      "end_col_offset": 60,
      "filename": "./conpot/protocols/kamstrup_management/commands.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 605,
        "link": "https://cwe.mitre.org/data/definitions/605.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Possible binding to all interfaces.",
      "line_number": 343,
      "line_range": [
        343
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b104_hardcoded_bind_all_interfaces.html",
      "test_id": "B104",
      "test_name": "hardcoded_bind_all_interfaces"
    },
    {
      "code": "492             ip_addr = parse_ip(params)\n493             if ip_addr == \"0.0.0.0\":\n494                 if databus.get_value(\"use_dhcp\") == \"NO\":\n",
      "col_offset": 26,
      "end_col_offset": 35,
      "filename": "./conpot/protocols/kamstrup_management/commands.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 605,
        "link": "https://cwe.mitre.org/data/definitions/605.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Possible binding to all interfaces.",
      "line_number": 493,
      "line_range": [
        493
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b104_hardcoded_bind_all_interfaces.html",
      "test_id": "B104",
      "test_name": "hardcoded_bind_all_interfaces"
    },
    {
      "code": "764 def parse_ip(ip_string):\n765     default = \"0.0.0.0\"\n766     if \".\" in ip_string:\n",
      "col_offset": 14,
      "end_col_offset": 23,
      "filename": "./conpot/protocols/kamstrup_management/commands.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 605,
        "link": "https://cwe.mitre.org/data/definitions/605.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Possible binding to all interfaces.",
      "line_number": 765,
      "line_range": [
        765
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b104_hardcoded_bind_all_interfaces.html",
      "test_id": "B104",
      "test_name": "hardcoded_bind_all_interfaces"
    },
    {
      "code": "46             )\n47             assert name not in self.registers\n48             self.registers[name] = kamstrup_register\n",
      "col_offset": 12,
      "end_col_offset": 45,
      "filename": "./conpot/protocols/kamstrup_meter/command_responder.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 47,
      "line_range": [
        47
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "64         else:\n65             assert False\n",
      "col_offset": 12,
      "end_col_offset": 24,
      "filename": "./conpot/protocols/kamstrup_meter/command_responder.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 65,
      "line_range": [
        65
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "88 \n89                 assert self.in_data_escaped is False\n90 \n",
      "col_offset": 16,
      "end_col_offset": 52,
      "filename": "./conpot/protocols/kamstrup_meter/decoder_382.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 89,
      "line_range": [
        89
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "131 \n132                 assert self.out_data_escaped is False\n133 \n",
      "col_offset": 16,
      "end_col_offset": 53,
      "filename": "./conpot/protocols/kamstrup_meter/decoder_382.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 132,
      "line_range": [
        132
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "155     def _decode_cmd_get_register(self):\n156         assert self.in_data[2] == 0x10\n157         # cmd = self.in_data[2]\n",
      "col_offset": 8,
      "end_col_offset": 38,
      "filename": "./conpot/protocols/kamstrup_meter/decoder_382.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 156,
      "line_range": [
        156
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "172     def _decode_cmd_return_register(self):\n173         assert self.out_data[2] == 0x10\n174         # skip command bytes and trailing checksum\n",
      "col_offset": 8,
      "end_col_offset": 39,
      "filename": "./conpot/protocols/kamstrup_meter/decoder_382.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 173,
      "line_range": [
        173
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "204     def _decode_cmd_get_type(self):\n205         assert self.in_data[2] == 0x01\n206         return \"Request for GetType\"\n",
      "col_offset": 8,
      "end_col_offset": 38,
      "filename": "./conpot/protocols/kamstrup_meter/decoder_382.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 205,
      "line_range": [
        205
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "208     def _decode_cmd_login(self):\n209         assert self.in_data[2] == 0x92\n210         pin_code = self.in_data[3] * 256 + self.in_data[4]\n",
      "col_offset": 8,
      "end_col_offset": 38,
      "filename": "./conpot/protocols/kamstrup_meter/decoder_382.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 209,
      "line_range": [
        209
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "43     def reboot(self, key):\n44         assert key == \"reboot_signal\"\n45         self.server_active = False\n",
      "col_offset": 8,
      "end_col_offset": 37,
      "filename": "./conpot/protocols/kamstrup_meter/kamstrup_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 44,
      "line_range": [
        44
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "96                         # real Kamstrup meters has delay in this interval\n97                         gevent.sleep(random.uniform(0.24, 0.34))\n98                         if response:\n",
      "col_offset": 37,
      "end_col_offset": 63,
      "filename": "./conpot/protocols/kamstrup_meter/kamstrup_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 330,
        "link": "https://cwe.mitre.org/data/definitions/330.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Standard pseudo-random generators are not suitable for security/cryptographic purposes.",
      "line_number": 97,
      "line_range": [
        97
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b311-random",
      "test_id": "B311",
      "test_name": "blacklist"
    },
    {
      "code": "63     def __init__(self, communication_address, command_byte, message_bytes):\n64         assert command_byte is command_byte\n65         super(KamstrupRequestGetRegisters, self).__init__(\n",
      "col_offset": 8,
      "end_col_offset": 43,
      "filename": "./conpot/protocols/kamstrup_meter/messages.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 64,
      "line_range": [
        64
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "70 \n71                 assert self.data_escaped is False\n72 \n",
      "col_offset": 16,
      "end_col_offset": 49,
      "filename": "./conpot/protocols/kamstrup_meter/request_parser.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 71,
      "line_range": [
        71
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "75                     name = b.attrib[\"name\"]\n76                     request_type = eval(\"mdef.\" + b.xpath(\"./type/text()\")[0])\n77                     start_addr = int(b.xpath(\"./starting_address/text()\")[0])\n",
      "col_offset": 35,
      "end_col_offset": 78,
      "filename": "./conpot/protocols/modbus/modbus_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 78,
        "link": "https://cwe.mitre.org/data/definitions/78.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Use of possibly insecure function - consider using safer ast.literal_eval.",
      "line_number": 76,
      "line_range": [
        76
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b307-eval",
      "test_id": "B307",
      "test_name": "blacklist"
    },
    {
      "code": "59                 self.decoder = _class()\n60                 assert isinstance(self.decoder, ProxyDecoder)\n61             except AssertionError:\n",
      "col_offset": 16,
      "end_col_offset": 61,
      "filename": "./conpot/protocols/proxy/proxy.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 60,
      "line_range": [
        60
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "157                     else:\n158                         assert False\n159 \n",
      "col_offset": 24,
      "end_col_offset": 36,
      "filename": "./conpot/protocols/proxy/proxy.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 158,
      "line_range": [
        158
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "165                     else:\n166                         assert False\n167                 except _socket.error as socket_err:\n",
      "col_offset": 24,
      "end_col_offset": 36,
      "filename": "./conpot/protocols/proxy/proxy.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 166,
      "line_range": [
        166
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "70         else:\n71             gevent.sleep(random.uniform(float(lbound), float(ubound)))\n72 \n",
      "col_offset": 25,
      "end_col_offset": 69,
      "filename": "./conpot/protocols/snmp/conpot_cmdrsp.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 330,
        "link": "https://cwe.mitre.org/data/definitions/330.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Standard pseudo-random generators are not suitable for security/cryptographic purposes.",
      "line_number": 71,
      "line_range": [
        71
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b311-random",
      "test_id": "B311",
      "test_name": "blacklist"
    },
    {
      "code": "28         udp_sock = gevent.socket.socket(gevent.socket.AF_INET, gevent.socket.SOCK_DGRAM)\n29         udp_sock.bind((\"0.0.0.0\", 0))\n30         config.add_transport(\n",
      "col_offset": 23,
      "end_col_offset": 32,
      "filename": "./conpot/tests/helpers/snmp_client.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 605,
        "link": "https://cwe.mitre.org/data/definitions/605.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Possible binding to all interfaces.",
      "line_number": 29,
      "line_range": [
        29
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b104_hardcoded_bind_all_interfaces.html",
      "test_id": "B104",
      "test_name": "hardcoded_bind_all_interfaces"
    },
    {
      "code": "36     logged = log_queue.events[0]\n37     assert logged[\"data\"] == event\n38     assert logged[\"data_type\"] == protocol\n",
      "col_offset": 4,
      "end_col_offset": 34,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 37,
      "line_range": [
        37
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "37     assert logged[\"data\"] == event\n38     assert logged[\"data_type\"] == protocol\n39 \n",
      "col_offset": 4,
      "end_col_offset": 42,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 38,
      "line_range": [
        38
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "39 \n40     assert logged[\"src_ip\"] == source_ip\n41     assert logged[\"src_port\"] == source_port\n",
      "col_offset": 4,
      "end_col_offset": 40,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 40,
      "line_range": [
        40
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "40     assert logged[\"src_ip\"] == source_ip\n41     assert logged[\"src_port\"] == source_port\n42     assert logged[\"remote\"] == (source_ip, source_port)\n",
      "col_offset": 4,
      "end_col_offset": 44,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 41,
      "line_range": [
        41
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "41     assert logged[\"src_port\"] == source_port\n42     assert logged[\"remote\"] == (source_ip, source_port)\n43 \n",
      "col_offset": 4,
      "end_col_offset": 55,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 42,
      "line_range": [
        42
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "43 \n44     assert logged[\"dst_ip\"] == destination_ip\n45     assert logged[\"dst_port\"] == destination_port\n",
      "col_offset": 4,
      "end_col_offset": 45,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 44,
      "line_range": [
        44
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "44     assert logged[\"dst_ip\"] == destination_ip\n45     assert logged[\"dst_port\"] == destination_port\n46     assert logged[\"local\"] == (destination_ip, destination_port)\n",
      "col_offset": 4,
      "end_col_offset": 49,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 45,
      "line_range": [
        45
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "45     assert logged[\"dst_port\"] == destination_port\n46     assert logged[\"local\"] == (destination_ip, destination_port)\n47 \n",
      "col_offset": 4,
      "end_col_offset": 64,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 46,
      "line_range": [
        46
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "48     # TODO should this even include public_ip if it's always None?\n49     assert logged[\"public_ip\"] is None\n50 \n",
      "col_offset": 4,
      "end_col_offset": 38,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 49,
      "line_range": [
        49
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "66 \n67     assert log_queue.events[0][\"id\"] == log_queue.events[1][\"id\"]\n68 \n",
      "col_offset": 4,
      "end_col_offset": 65,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 67,
      "line_range": [
        67
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "93 \n94     assert log_queue.events[0][\"id\"] != log_queue.events[1][\"id\"]\n95 \n",
      "col_offset": 4,
      "end_col_offset": 65,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 94,
      "line_range": [
        94
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "116         # not the time the event occurred\n117         assert log_queue.events[0][\"timestamp\"] == session_start\n118         assert log_queue.events[1][\"timestamp\"] == session_start\n",
      "col_offset": 8,
      "end_col_offset": 64,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 117,
      "line_range": [
        117
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "117         assert log_queue.events[0][\"timestamp\"] == session_start\n118         assert log_queue.events[1][\"timestamp\"] == session_start\n119 \n",
      "col_offset": 8,
      "end_col_offset": 64,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 118,
      "line_range": [
        118
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "147 \n148     assert dump[\"data_type\"] == protocol\n149     assert list(dump[\"data\"].keys()) == [2000, 4000, 6000]\n",
      "col_offset": 4,
      "end_col_offset": 40,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 148,
      "line_range": [
        148
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "148     assert dump[\"data_type\"] == protocol\n149     assert list(dump[\"data\"].keys()) == [2000, 4000, 6000]\n150     assert list(dump[\"data\"].values()) == [event_1, event_2, event_1]\n",
      "col_offset": 4,
      "end_col_offset": 58,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 149,
      "line_range": [
        149
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "149     assert list(dump[\"data\"].keys()) == [2000, 4000, 6000]\n150     assert list(dump[\"data\"].values()) == [event_1, event_2, event_1]\n151 \n",
      "col_offset": 4,
      "end_col_offset": 69,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 150,
      "line_range": [
        150
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "151 \n152     assert dump[\"src_ip\"] == source_ip\n153     assert dump[\"src_port\"] == source_port\n",
      "col_offset": 4,
      "end_col_offset": 38,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 152,
      "line_range": [
        152
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "152     assert dump[\"src_ip\"] == source_ip\n153     assert dump[\"src_port\"] == source_port\n154     assert dump[\"remote\"] == (source_ip, source_port)\n",
      "col_offset": 4,
      "end_col_offset": 42,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 153,
      "line_range": [
        153
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "153     assert dump[\"src_port\"] == source_port\n154     assert dump[\"remote\"] == (source_ip, source_port)\n155 \n",
      "col_offset": 4,
      "end_col_offset": 53,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 154,
      "line_range": [
        154
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "155 \n156     assert dump[\"dst_ip\"] == destination_ip\n157     assert dump[\"dst_port\"] == destination_port\n",
      "col_offset": 4,
      "end_col_offset": 43,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 156,
      "line_range": [
        156
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "156     assert dump[\"dst_ip\"] == destination_ip\n157     assert dump[\"dst_port\"] == destination_port\n158     assert dump[\"local\"] == (destination_ip, destination_port)\n",
      "col_offset": 4,
      "end_col_offset": 47,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 157,
      "line_range": [
        157
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "157     assert dump[\"dst_port\"] == destination_port\n158     assert dump[\"local\"] == (destination_ip, destination_port)\n159 \n",
      "col_offset": 4,
      "end_col_offset": 62,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 158,
      "line_range": [
        158
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "160     # TODO should this even include public_ip if it's always None?\n161     assert dump[\"public_ip\"] is None\n",
      "col_offset": 4,
      "end_col_offset": 36,
      "filename": "./conpot/tests/test_attack_session.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 161,
      "line_range": [
        161
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "18 import os\n19 import subprocess\n20 import unittest\n",
      "col_offset": 0,
      "end_col_offset": 17,
      "filename": "./conpot/tests/test_docs.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 78,
        "link": "https://cwe.mitre.org/data/definitions/78.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Consider possible security implications associated with the subprocess module.",
      "line_number": 19,
      "line_range": [
        19
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_imports.html#b404-import-subprocess",
      "test_id": "B404",
      "test_name": "blacklist"
    },
    {
      "code": "33 \n34         process = subprocess.Popen(\n35             cmd.split(), cwd=project_root, stdout=subprocess.PIPE\n36         )\n37         output = process.communicate()[0].decode()\n",
      "col_offset": 18,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_docs.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 78,
        "link": "https://cwe.mitre.org/data/definitions/78.html"
      },
      "issue_severity": "LOW",
      "issue_text": "subprocess call - check for execution of untrusted input.",
      "line_number": 34,
      "line_range": [
        34,
        35,
        36
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b603_subprocess_without_shell_equals_true.html",
      "test_id": "B603",
      "test_name": "subprocess_without_shell_equals_true"
    },
    {
      "code": "75                 op[\"method\"] = \"get_attributes_all\"\n76                 assert (\n77                     \"data\" not in op\n78                 ), \"All Attributes cannot be operated on using Set Attribute services\"\n79             elif \"symbolic\" in path_end or \"attribute\" in path_end or \"element\":\n",
      "col_offset": 16,
      "end_col_offset": 86,
      "filename": "./conpot/tests/test_enip_server.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 76,
      "line_range": [
        76,
        77,
        78
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "30 from conpot.utils.networking import sanitize_file_name\n31 import ftplib  # Use ftplib's client for more authentic testing\n32 \n",
      "col_offset": 0,
      "end_col_offset": 13,
      "filename": "./conpot/tests/test_ftp.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 319,
        "link": "https://cwe.mitre.org/data/definitions/319.html"
      },
      "issue_severity": "HIGH",
      "issue_text": "A FTP-related module is being imported.  FTP is considered insecure. Use SSH/SFTP/SCP or some other encrypted protocol.",
      "line_number": 31,
      "line_range": [
        31
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_imports.html#b402-import-ftplib",
      "test_id": "B402",
      "test_name": "blacklist"
    },
    {
      "code": "45         self.ftp_server, self.greenlet = spawn_test_server(FTPServer, \"default\", \"ftp\")\n46         self.client = ftplib.FTP()\n47 \n",
      "col_offset": 22,
      "end_col_offset": 34,
      "filename": "./conpot/tests/test_ftp.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 319,
        "link": "https://cwe.mitre.org/data/definitions/319.html"
      },
      "issue_severity": "HIGH",
      "issue_text": "FTP-related functions are being called. FTP is considered insecure. Use SSH/SFTP/SCP or some other encrypted protocol.",
      "line_number": 46,
      "line_range": [
        46
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b321-ftplib",
      "test_id": "B321",
      "test_name": "blacklist"
    },
    {
      "code": "66         self.client_connect()\n67         self.client.login(user=\"nobody\", passwd=\"nobody\")\n68 \n",
      "col_offset": 8,
      "end_col_offset": 57,
      "filename": "./conpot/tests/test_ftp.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 259,
        "link": "https://cwe.mitre.org/data/definitions/259.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Possible hardcoded password: 'nobody'",
      "line_number": 67,
      "line_range": [
        67
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b106_hardcoded_password_funcarg.html",
      "test_id": "B106",
      "test_name": "hardcoded_password_funcarg"
    },
    {
      "code": "75             del self.client\n76         self.client = ftplib.FTP()\n77         self.client_connect()\n",
      "col_offset": 22,
      "end_col_offset": 34,
      "filename": "./conpot/tests/test_ftp.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 319,
        "link": "https://cwe.mitre.org/data/definitions/319.html"
      },
      "issue_severity": "HIGH",
      "issue_text": "FTP-related functions are being called. FTP is considered insecure. Use SSH/SFTP/SCP or some other encrypted protocol.",
      "line_number": 76,
      "line_range": [
        76
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/blacklists/blacklist_calls.html#b321-ftplib",
      "test_id": "B321",
      "test_name": "blacklist"
    },
    {
      "code": "87             \"Technodrome - Mouser Factory.\",\n88             self.client.login(user=\"nobody\", passwd=\"nobody\"),\n89         )\n",
      "col_offset": 12,
      "end_col_offset": 61,
      "filename": "./conpot/tests/test_ftp.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 259,
        "link": "https://cwe.mitre.org/data/definitions/259.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Possible hardcoded password: 'nobody'",
      "line_number": 88,
      "line_range": [
        88
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b106_hardcoded_password_funcarg.html",
      "test_id": "B106",
      "test_name": "hardcoded_password_funcarg"
    },
    {
      "code": "537         self.assertRaises(\n538             ftplib.error_perm, self.client.login, user=\"nobody\", passwd=\"incorrect_pass\"\n539         )\n540         self.assertRaises(\n541             ftplib.error_perm, self.client.login, user=\"nobody\", passwd=\"incorrect_pass\"\n",
      "col_offset": 8,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_ftp.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 259,
        "link": "https://cwe.mitre.org/data/definitions/259.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Possible hardcoded password: 'incorrect_pass'",
      "line_number": 538,
      "line_range": [
        537,
        538,
        539
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b106_hardcoded_password_funcarg.html",
      "test_id": "B106",
      "test_name": "hardcoded_password_funcarg"
    },
    {
      "code": "540         self.assertRaises(\n541             ftplib.error_perm, self.client.login, user=\"nobody\", passwd=\"incorrect_pass\"\n542         )\n543         self.assertRaises(\n544             ftplib.error_perm, self.client.login, user=\"nobody\", passwd=\"incorrect_pass\"\n",
      "col_offset": 8,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_ftp.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 259,
        "link": "https://cwe.mitre.org/data/definitions/259.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Possible hardcoded password: 'incorrect_pass'",
      "line_number": 541,
      "line_range": [
        540,
        541,
        542
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b106_hardcoded_password_funcarg.html",
      "test_id": "B106",
      "test_name": "hardcoded_password_funcarg"
    },
    {
      "code": "543         self.assertRaises(\n544             ftplib.error_perm, self.client.login, user=\"nobody\", passwd=\"incorrect_pass\"\n545         )\n546         self.assertRaisesRegex(\n547             ftplib.error_temp,\n",
      "col_offset": 8,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_ftp.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 259,
        "link": "https://cwe.mitre.org/data/definitions/259.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Possible hardcoded password: 'incorrect_pass'",
      "line_number": 544,
      "line_range": [
        543,
        544,
        545
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b106_hardcoded_password_funcarg.html",
      "test_id": "B106",
      "test_name": "hardcoded_password_funcarg"
    },
    {
      "code": "550             user=\"nobody\",\n551             passwd=\"incorrect_pass\",\n552         )\n",
      "col_offset": 8,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_ftp.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 259,
        "link": "https://cwe.mitre.org/data/definitions/259.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Possible hardcoded password: 'incorrect_pass'",
      "line_number": 551,
      "line_range": [
        546,
        547,
        548,
        549,
        550,
        551,
        552
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b106_hardcoded_password_funcarg.html",
      "test_id": "B106",
      "test_name": "hardcoded_password_funcarg"
    },
    {
      "code": "45 \n46     assert instance.args == args\n47 \n",
      "col_offset": 4,
      "end_col_offset": 32,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 46,
      "line_range": [
        46
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "51 \n52     assert str(greenlet).startswith('<ServiceGreenlet \"StartableStub\"')\n53 \n",
      "col_offset": 4,
      "end_col_offset": 71,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 52,
      "line_range": [
        52
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "57 \n58     assert not greenlet.scheduled_once.is_set()\n59 \n",
      "col_offset": 4,
      "end_col_offset": 47,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 58,
      "line_range": [
        58
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "64 \n65     assert greenlet.scheduled_once.is_set()\n66 \n",
      "col_offset": 4,
      "end_col_offset": 43,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 65,
      "line_range": [
        65
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "85 \n86     assert isinstance(server, ServerStub)\n87     assert isinstance(greenlet, Greenlet)\n",
      "col_offset": 4,
      "end_col_offset": 41,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 86,
      "line_range": [
        86
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "86     assert isinstance(server, ServerStub)\n87     assert isinstance(greenlet, Greenlet)\n88 \n",
      "col_offset": 4,
      "end_col_offset": 41,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 87,
      "line_range": [
        87
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "88 \n89     assert server.template.endswith(\"/conpot/templates/default/Fake/Fake.xml\")\n90     assert server.template_directory.endswith(\"/conpot/templates/default\")\n",
      "col_offset": 4,
      "end_col_offset": 78,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 89,
      "line_range": [
        89
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "89     assert server.template.endswith(\"/conpot/templates/default/Fake/Fake.xml\")\n90     assert server.template_directory.endswith(\"/conpot/templates/default\")\n91     assert server.args == \"arbitrary\"\n",
      "col_offset": 4,
      "end_col_offset": 74,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 90,
      "line_range": [
        90
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "90     assert server.template_directory.endswith(\"/conpot/templates/default\")\n91     assert server.args == \"arbitrary\"\n92 \n",
      "col_offset": 4,
      "end_col_offset": 37,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 91,
      "line_range": [
        91
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "96 \n97     assert core.get_databus().initialized.is_set()\n98 \n",
      "col_offset": 4,
      "end_col_offset": 50,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 97,
      "line_range": [
        97
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "102 \n103     assert greenlet.scheduled_once.is_set()\n104 \n",
      "col_offset": 4,
      "end_col_offset": 43,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 103,
      "line_range": [
        103
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "108 \n109     assert server.host == \"127.0.0.1\"\n110     assert server.port == 0\n",
      "col_offset": 4,
      "end_col_offset": 37,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 109,
      "line_range": [
        109
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "109     assert server.host == \"127.0.0.1\"\n110     assert server.port == 0\n111 \n",
      "col_offset": 4,
      "end_col_offset": 27,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 110,
      "line_range": [
        110
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "115 \n116     assert server.port == 42\n117 \n",
      "col_offset": 4,
      "end_col_offset": 28,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 116,
      "line_range": [
        116
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "135 \n136     assert server.stopped\n137     assert greenlet.dead\n",
      "col_offset": 4,
      "end_col_offset": 25,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 136,
      "line_range": [
        136
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "136     assert server.stopped\n137     assert greenlet.dead\n138 \n",
      "col_offset": 4,
      "end_col_offset": 24,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 137,
      "line_range": [
        137
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "153 \n154     assert str(exc_info.value) == \"Test Error\"\n",
      "col_offset": 4,
      "end_col_offset": 46,
      "filename": "./conpot/tests/test_greenlet.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 154,
      "line_range": [
        154
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "46         \"\"\"\n47         ret = requests.get(\n48             \"http://127.0.0.1:{0}/tests/unittest_base.html\".format(\n49                 self.http_server.server_port\n50             )\n51         )\n52         self.assertIn(\n",
      "col_offset": 14,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_http_server.py",
      "issue_confidence": "LOW",
      "issue_cwe": {
        "id": 400,
        "link": "https://cwe.mitre.org/data/definitions/400.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Call to requests without timeout",
      "line_number": 47,
      "line_range": [
        47,
        48,
        49,
        50,
        51
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b113_request_without_timeout.html",
      "test_id": "B113",
      "test_name": "request_without_timeout"
    },
    {
      "code": "62         if sysName:\n63             ret = requests.get(\n64                 \"http://127.0.0.1:{0}/tests/unittest_databus.html\".format(\n65                     self.http_server.server_port\n66                 )\n67             )\n68             self.assertIn(\n",
      "col_offset": 18,
      "end_col_offset": 13,
      "filename": "./conpot/tests/test_http_server.py",
      "issue_confidence": "LOW",
      "issue_cwe": {
        "id": 400,
        "link": "https://cwe.mitre.org/data/definitions/400.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Call to requests without timeout",
      "line_number": 63,
      "line_range": [
        63,
        64,
        65,
        66,
        67
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b113_request_without_timeout.html",
      "test_id": "B113",
      "test_name": "request_without_timeout"
    },
    {
      "code": "97             dt_req_start = datetime.datetime.now()\n98             requests.get(\n99                 \"http://127.0.0.1:{0}/tests/unittest_tarpit.html\".format(\n100                     self.http_server.server_port\n101                 )\n102             )\n103             dt_req_delta = datetime.datetime.now() - dt_req_start\n",
      "col_offset": 12,
      "end_col_offset": 13,
      "filename": "./conpot/tests/test_http_server.py",
      "issue_confidence": "LOW",
      "issue_cwe": {
        "id": 400,
        "link": "https://cwe.mitre.org/data/definitions/400.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Call to requests without timeout",
      "line_number": 98,
      "line_range": [
        98,
        99,
        100,
        101,
        102
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b113_request_without_timeout.html",
      "test_id": "B113",
      "test_name": "request_without_timeout"
    },
    {
      "code": "121         \"\"\"\n122         ret = requests.get(\n123             \"http://127.0.0.1:{0}/tests/unittest_subselects.html?action=unit&subaction=test\".format(\n124                 self.http_server.server_port\n125             )\n126         )\n127         self.assertIn(\n",
      "col_offset": 14,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_http_server.py",
      "issue_confidence": "LOW",
      "issue_cwe": {
        "id": 400,
        "link": "https://cwe.mitre.org/data/definitions/400.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Call to requests without timeout",
      "line_number": 122,
      "line_range": [
        122,
        123,
        124,
        125,
        126
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b113_request_without_timeout.html",
      "test_id": "B113",
      "test_name": "request_without_timeout"
    },
    {
      "code": "153         \"\"\"\n154         ret = requests.head(\n155             \"http://127.0.0.1:{0}/tests/unittest_subselects.html?action=unit&subaction=test\".format(\n156                 self.http_server.server_port\n157             )\n158         )\n159         self.assertTrue(\n",
      "col_offset": 14,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_http_server.py",
      "issue_confidence": "LOW",
      "issue_cwe": {
        "id": 400,
        "link": "https://cwe.mitre.org/data/definitions/400.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Call to requests without timeout",
      "line_number": 154,
      "line_range": [
        154,
        155,
        156,
        157,
        158
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b113_request_without_timeout.html",
      "test_id": "B113",
      "test_name": "request_without_timeout"
    },
    {
      "code": "163         # Test for 404\n164         ret = requests.head(\n165             \"http://127.0.0.1:{0}/tests/random_page_does_not_exists.html\".format(\n166                 self.http_server.server_port\n167             )\n168         )\n169         self.assertEqual(ret.status_code, 404)\n",
      "col_offset": 14,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_http_server.py",
      "issue_confidence": "LOW",
      "issue_cwe": {
        "id": 400,
        "link": "https://cwe.mitre.org/data/definitions/400.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Call to requests without timeout",
      "line_number": 164,
      "line_range": [
        164,
        165,
        166,
        167,
        168
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b113_request_without_timeout.html",
      "test_id": "B113",
      "test_name": "request_without_timeout"
    },
    {
      "code": "172         self.http_server.cmd_responder.httpd.disable_method_head = True\n173         ret = requests.head(\n174             \"http://127.0.0.1:{0}/tests/unittest_subselects.html?action=unit&subaction=test\".format(\n175                 self.http_server.server_port\n176             )\n177         )\n178         self.assertEqual(ret.status_code, 501)\n",
      "col_offset": 14,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_http_server.py",
      "issue_confidence": "LOW",
      "issue_cwe": {
        "id": 400,
        "link": "https://cwe.mitre.org/data/definitions/400.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Call to requests without timeout",
      "line_number": 173,
      "line_range": [
        173,
        174,
        175,
        176,
        177
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b113_request_without_timeout.html",
      "test_id": "B113",
      "test_name": "request_without_timeout"
    },
    {
      "code": "183         \"\"\"\n184         ret = requests.options(\n185             \"http://127.0.0.1:{0}/tests/unittest_subselects.html?action=unit&subaction=test\".format(\n186                 self.http_server.server_port\n187             )\n188         )\n189         self.assertEqual((ret.headers[\"allow\"]), \"GET,HEAD,POST,OPTIONS,TRACE\")\n",
      "col_offset": 14,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_http_server.py",
      "issue_confidence": "LOW",
      "issue_cwe": {
        "id": 400,
        "link": "https://cwe.mitre.org/data/definitions/400.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Call to requests without timeout",
      "line_number": 184,
      "line_range": [
        184,
        185,
        186,
        187,
        188
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b113_request_without_timeout.html",
      "test_id": "B113",
      "test_name": "request_without_timeout"
    },
    {
      "code": "202         payload = {\"key1\": \"value1\", \"key2\": \"value2\"}\n203         ret = requests.post(\n204             \"http://127.0.0.1:{0}/tests/demo.html\".format(self.http_server.server_port),\n205             data=payload,\n206         )\n207         self.assertEqual(ret.status_code, 404)\n",
      "col_offset": 14,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_http_server.py",
      "issue_confidence": "LOW",
      "issue_cwe": {
        "id": 400,
        "link": "https://cwe.mitre.org/data/definitions/400.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Call to requests without timeout",
      "line_number": 203,
      "line_range": [
        203,
        204,
        205,
        206
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b113_request_without_timeout.html",
      "test_id": "B113",
      "test_name": "request_without_timeout"
    },
    {
      "code": "213         payload = b\"PUT /index.html HTTP/1.1\\r\\nHost: localhost\\r\\n\\r\\n\"\n214         ret = requests.put(\n215             \"http://127.0.0.1:{0}/tests/demo.html\".format(self.http_server.server_port),\n216             data=payload,\n217         )\n218         self.assertEqual(ret.status_code, 501)\n",
      "col_offset": 14,
      "end_col_offset": 9,
      "filename": "./conpot/tests/test_http_server.py",
      "issue_confidence": "LOW",
      "issue_cwe": {
        "id": 400,
        "link": "https://cwe.mitre.org/data/definitions/400.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Call to requests without timeout",
      "line_number": 214,
      "line_range": [
        214,
        215,
        216,
        217
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b113_request_without_timeout.html",
      "test_id": "B113",
      "test_name": "request_without_timeout"
    },
    {
      "code": "33         ident = \"HBmU08rR\"\n34         secret = \"XDNNuMGYUuWFaWyi\"\n35         channels = [\n",
      "col_offset": 17,
      "end_col_offset": 35,
      "filename": "./conpot/tests/test_logger_hpfriends.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 259,
        "link": "https://cwe.mitre.org/data/definitions/259.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Possible hardcoded password: 'XDNNuMGYUuWFaWyi'",
      "line_number": 34,
      "line_range": [
        34
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b105_hardcoded_password_string.html",
      "test_id": "B105",
      "test_name": "hardcoded_password_string"
    },
    {
      "code": "38         sensorid = \"default\"\n39         public_ip = \"0.0.0.0\"\n40         dst_port = 502\n",
      "col_offset": 20,
      "end_col_offset": 29,
      "filename": "./conpot/tests/test_logger_json.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 605,
        "link": "https://cwe.mitre.org/data/definitions/605.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Possible binding to all interfaces.",
      "line_number": 39,
      "line_range": [
        39
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b104_hardcoded_bind_all_interfaces.html",
      "test_id": "B104",
      "test_name": "hardcoded_bind_all_interfaces"
    },
    {
      "code": "18 \n19     assert inst_1.value == 1\n20     assert inst_2.value == 2\n",
      "col_offset": 4,
      "end_col_offset": 28,
      "filename": "./conpot/tests/test_protocol_wrapper.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 19,
      "line_range": [
        19
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "19     assert inst_1.value == 1\n20     assert inst_2.value == 2\n21 \n",
      "col_offset": 4,
      "end_col_offset": 28,
      "filename": "./conpot/tests/test_protocol_wrapper.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 20,
      "line_range": [
        20
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "26 \n27     assert repr(inst_1) == \"ProtocolFake(1)\"\n28     assert repr(inst_2) == \"ProtocolFake(2)\"\n",
      "col_offset": 4,
      "end_col_offset": 44,
      "filename": "./conpot/tests/test_protocol_wrapper.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 27,
      "line_range": [
        27
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "27     assert repr(inst_1) == \"ProtocolFake(1)\"\n28     assert repr(inst_2) == \"ProtocolFake(2)\"\n29 \n",
      "col_offset": 4,
      "end_col_offset": 44,
      "filename": "./conpot/tests/test_protocol_wrapper.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 28,
      "line_range": [
        28
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "31 def test_wrapped_classes_have_inner_class_attributes():\n32     assert ProtocolFake.__doc__ == \"Fake docstring\"\n33     assert ProtocolFake.__module__ == __name__\n",
      "col_offset": 4,
      "end_col_offset": 51,
      "filename": "./conpot/tests/test_protocol_wrapper.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 32,
      "line_range": [
        32
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "32     assert ProtocolFake.__doc__ == \"Fake docstring\"\n33     assert ProtocolFake.__module__ == __name__\n34     assert ProtocolFake.__name__ == \"ProtocolFake\"\n",
      "col_offset": 4,
      "end_col_offset": 46,
      "filename": "./conpot/tests/test_protocol_wrapper.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 33,
      "line_range": [
        33
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "33     assert ProtocolFake.__module__ == __name__\n34     assert ProtocolFake.__name__ == \"ProtocolFake\"\n",
      "col_offset": 4,
      "end_col_offset": 50,
      "filename": "./conpot/tests/test_protocol_wrapper.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 34,
      "line_range": [
        34
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "32     # Greenlets with broken shutdown logic will wait to be scheduled again\n33     assert greenlet.successful()\n34 \n",
      "col_offset": 4,
      "end_col_offset": 32,
      "filename": "./conpot/tests/test_protocols.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 33,
      "line_range": [
        33
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "39 \n40     assert not greenlet.ready()\n41 \n",
      "col_offset": 4,
      "end_col_offset": 31,
      "filename": "./conpot/tests/test_protocols.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 40,
      "line_range": [
        40
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "28     with TemporaryDirectory() as tmpdir:\n29         responder = CommandResponder(\"\", 0, \"/tmp\", tmpdir)\n30 \n",
      "col_offset": 44,
      "end_col_offset": 50,
      "filename": "./conpot/tests/test_snmp_command_responder.py",
      "issue_confidence": "MEDIUM",
      "issue_cwe": {
        "id": 377,
        "link": "https://cwe.mitre.org/data/definitions/377.html"
      },
      "issue_severity": "MEDIUM",
      "issue_text": "Probable insecure usage of temp file/directory.",
      "line_number": 29,
      "line_range": [
        29
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b108_hardcoded_tmp_directory.html",
      "test_id": "B108",
      "test_name": "hardcoded_tmp_directory"
    },
    {
      "code": "33 \n34         assert str(exc_info.value).startswith(\"NONEXISTENT-MIB compilation error\")\n35         assert not responder._get_mibSymbol(\"NONEXISTENT-MIB\", \"foobar\")\n",
      "col_offset": 8,
      "end_col_offset": 82,
      "filename": "./conpot/tests/test_snmp_command_responder.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 34,
      "line_range": [
        34
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "34         assert str(exc_info.value).startswith(\"NONEXISTENT-MIB compilation error\")\n35         assert not responder._get_mibSymbol(\"NONEXISTENT-MIB\", \"foobar\")\n36 \n",
      "col_offset": 8,
      "end_col_offset": 72,
      "filename": "./conpot/tests/test_snmp_command_responder.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 35,
      "line_range": [
        35
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    },
    {
      "code": "45 \n46         assert responder._get_mibSymbol(\"VOGON-POEM-MIB\", \"poemNumber\")\n",
      "col_offset": 8,
      "end_col_offset": 71,
      "filename": "./conpot/tests/test_snmp_command_responder.py",
      "issue_confidence": "HIGH",
      "issue_cwe": {
        "id": 703,
        "link": "https://cwe.mitre.org/data/definitions/703.html"
      },
      "issue_severity": "LOW",
      "issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
      "line_number": 46,
      "line_range": [
        46
      ],
      "more_info": "https://bandit.readthedocs.io/en/1.9.4/plugins/b101_assert_used.html",
      "test_id": "B101",
      "test_name": "assert_used"
    }
  ]
}