Пример #1
0
def run_airodump_in_tmux(tmux_session, sudo_password, new_window=False):
    airodump_params = (
        "--sudo-pwd %s --airmon-ng-path %s --airodump-path %s --airodump-file-prefix %s"
        " --wifi-interfaces %s --airodump-log-interval-in-seconds %d"
        % (
            sudo_password,
            settings.FULL_PATH_TO_AIRMON_NG,
            settings.FULL_PATH_TO_AIRODUMP,
            os.path.join(build_tmp_dir_name(), settings.AIRODUMP_FILE_PREFIX),
            settings.WIFI_INTERFACES,
            settings.AIRODUMP_LOG_INTERVAL_IN_SECONDS,
        )
    )
    run_command_in_tmux(
        tmux_session,
        "%s %s/box/airo_tasks/start_airodump.py %s"
        % (sys.executable, settings.BASE_DIR, airodump_params),
        new_window=new_window,
        restart_after_n_seconds=3,
        window_name="airodump-ng",
    )
    logger.info(
        "Started airodump listening on %s ..."
        % find_interface(settings.WIFI_INTERFACES)
    )
Пример #2
0
def restart_airomon_ng(tmux_session, sudo_pwd):
    """Kill the tmux window running airomon_ng, delete all csv files with older Mac Addresses, and start fresh."""
    logger.info("Restarting airodump for long-term health and sanitary reasons ...")
    tmux_session.find_where({"window_name": "airodump-ng"}).kill_window()
    tmp_dir = build_tmp_dir_name()
    for airomon_file in [
        f for f in os.listdir(tmp_dir) if f.startswith(settings.AIRODUMP_FILE_PREFIX)
    ]:
        os.remove(f"{tmp_dir}/{airomon_file}")
    run_airodump_in_tmux(tmux_session, sudo_pwd, new_window=True)
Пример #3
0
def restart_sensor(tmux_session):
    """Kill the tmux window running the sensor, delete all sensor files, and start fresh."""
    logger.info(
        "Restarting sensor for long-term health and sanitary reasons ...")
    tmux_session.find_where({"window_name": "sensor"}).kill_window()
    tmp_dir = build_tmp_dir_name()
    for sensor_file in [
            f for f in os.listdir(tmp_dir)
            if f.startswith(settings.SENSOR_FILE_PREFIX)
    ]:
        os.remove(f"{tmp_dir}/{sensor_file}")
    start_sensor_in_tmux(tmux_session, new_window=True)
Пример #4
0
def start_sensor_in_tmux(tmux_session, new_window: bool = False):
    tmp_dir = build_tmp_dir_name()
    logger.info(f"{settings.TERM_LBL} Starting the sensor ...")
    cmd = (
        '%s%s -c \'import importlib; sensor=importlib.import_module("%s"); sensor.start_sensing("%s")\''
        % (
            "%s " % settings.ACTIVATE_VENV_CMD
            if settings.ACTIVATE_VENV_CMD is not None else "",
            sys.executable,
            settings.SENSOR_MODULE,
            tmp_dir,
        ))

    run_command_in_tmux(
        tmux_session,
        cmd,
        new_window=new_window,
        restart_after_n_seconds=3,
        window_name="sensor",
    )
Пример #5
0
 def handle(self, *args, **kwargs):
     tmp_dir_name = build_tmp_dir_name()
     csv_file_to_db(tmp_dir_name, settings.AIRODUMP_FILE_PREFIX)
Пример #6
0
 def handle(self, *args, **kwargs):
     tmp_dir_name = build_tmp_dir_name()
     sensor_data_to_db(tmp_dir_name)