Как отличить брандмауэр с сохранением состояния от брандмауэра без сохранения состояния с помощью сканирования Nmap ACK

Используйте массив вместо того, чтобы пытаться создавать отдельные переменные.

declare -a x

for dy in {0..4}; do
  x+=( "$( date -d "$mn $d - $dy days" +'%b %_d' )" )
done

Затем вы можете получить доступ к четырем значениям в $ {x [0]} до $ {x [3]} .

Рассматривали ли вы для первой части вашего скрипта использование оператора select ?

select mn in "Jan" "Feb" "Mar" "Apr" "May" "Jun" \
             "Jul" "Aug" "Sep" "Oct" "Nov" "Dec"
do
  if [[ -z "$mn" ]]; then
    echo "Invalid choice" >&2
  else
    break
  fi
done

printf "You selected '%s'\n" "$mn"

Это делает следующее:

1) Jan    3) Mar   5) May   7) Jul   9) Sep  11) Nov
2) Feb    4) Apr   6) Jun   8) Aug  10) Oct  12) Dec
#? 56
Invalid choice
#? 5
You selected 'May'

Значение $ mn будет выбранная строка (например, Май ).

3
28.06.2016, 23:48
2 ответа

Давайте рассмотрим, каковы будут различия в поведении между брандмауэром с состоянием и без состояния. Нестационарный брандмауэр будет блокировать на основе номера порта, но он не может просто блокировать входящие пакеты ACK, потому что они могут быть посланы в ответ на OUTGOING соединение. Поэтому с точки зрения сканирования -sA порты будут отображаться как "нефильтрованные", потому что брандмауэр фильтрует только SYN-пакеты.

С другой стороны, брандмауэр с контролем состояния может определить, является ли входящий пакет ACK частью установленного исходящего соединения. Он блокирует пакет, только если он незапрашиваемый (как в случае -sA). Поэтому Nmap пометит порт как "отфильтрованный".

Итак, окончательное определение таково: если сканирование ACK показывает некоторые порты как "отфильтрованные", то это, скорее всего, государственный брандмауэр. Если все порты показаны как "нефильтрованные", но обычное SYN-сканирование показывает некоторые как "фильтрованные", то это брандмауэр без состояния.

4
27.01.2020, 21:18

Я согласен с ответом, данным bonasaiviking . Чтобы импровизировать, есть сканирование окна (-sW), которое в основном использует детали реализации определенных (, поэтому nmap предупреждает, что ему не всегда можно доверять )системы. Пакет, возвращенный RST, с -sAили -sW, проверяется на наличие поля TCP Window, и делается вывод об открытом или закрытом порте.

Ссылка:https://nmap.org/book/man-port-scanning-techniques.html

0
27.01.2020, 21:18

Теги

Похожие вопросы