334.1 ネットワークハーデニング
課題 334: ネットワークセキュリティ
334.1 ネットワークハーデニング
LPIC303の試験範囲である主題331~335まであるうちの「334: ネットワークセキュリティ」から「334.1 ネットワークハーデニング」についてのまとめ
総重量:4
説明:
一般的な脅威に対して、ネットワークをセキュアに設定できる。これには、特定のノードとプロトコルについて、ネットワークトラフィックを解析が含まれている。主要な知識範囲:
ワイヤレスネットワークのセキュリティ機構を理解する。
ネットワークノードの認証のため、FreeRADIUSを設定する。
ネットワークトラフィックの分析・フィルタ・統計取得のため、Wiresharkやtcpdumpを利用する。
ワイヤレスネットワークを解析し、ワイヤレスネットワークのトラフィックを取得するために、Kismetを利用する。
不正なRA(rogue router advertisement: ルータアドバタイズメント)とDHCPメッセージの確認と取り扱い。
aircrack-ngとbettercapの知識
重要なファイル、用語、ユーティリティ:
radiusd
radmin
radtest
radclient
radlast
radwho
radiusd.conf
/etc/raddb/*
wireshark
tshark
tcpdump
kismet
ndpmon
ワイヤレスネットワークのセキュリティ機構を理解する
暗号化方式
WEP
認証方式と一体TKIP(Temporal Key Integrity Protocol)
CCMP
暗号化アルゴリズム
AES(Advanced Encryption Standard)
RC4
認証方式
WPA2-PSK
WPA-PSK
WEP
暗号化方式と一体PSK
IEEE802.1x
Web認証
EAP-TLS
PEAP(EAP-MSCHAP v2)
PEAP(EAP-TLS)
FreeRADIUSを設定する
FreeRadiusとは
オープンソースのRADIUSサーバー
Radiusとは
Remote Authentication Dial In User Service
AAA(Authentication(認証)、Authorization(認可)、Accounting(課金)の仕組みを提供するサーバー
1812/UDPを使う
ネットワーク機器のログイン情報を一元管理できる
WiFiのユーザー認証にも使われる
用語
radiusユーザー/Supplicant
radiusサーバーにあるユーザー情報で認証したいユーザー
設定ファイルは "users"radiusクライアント/Authenticator
NAS(Network Access Server)
radiusユーザーの認証要求を受け付けてradiusサーバに転送する
設定ファイルは "clients.conf"radiusサーバー/AuthenticationServer
radiusプロトコルを使って認証するサーバー
設定ファイルは "radiusd.conf"
インストール
RockyLinux9の場合
[root@lpic303-rocky34 ~]#
[root@lpic303-rocky34 ~]# dnf install freeradius
[root@lpic303-rocky34 ~]# dnf install freeradius-utils
[root@lpic303-rocky34 ~]#
Ubuntu22.04の場合
root@lpic303-ubuntu35:~#
root@lpic303-ubuntu35:~# apt install freeradius
root@lpic303-ubuntu35:~# apt install freeradius-utils
root@lpic303-ubuntu35:~#
設定ファイルの場所
RockyLinux9は "/etc/raddb"
Ubuntu22.04は "/etc/freeradius/3.0"
[root@lpic303-rocky34 ~]#
[root@lpic303-rocky34 ~]# cd /etc/raddb/
[root@lpic303-rocky34 raddb]#
[root@lpic303-rocky34 raddb]# ls -l
合計 128
-rw-r-----. 1 root radiusd 20807 1月 25 08:32 README.rst
drwxrwx---. 2 root radiusd 167 1月 30 21:12 certs
-rw-r-----. 1 root radiusd 7476 1月 25 08:32 clients.conf
-rw-r--r--. 1 root radiusd 1440 1月 25 08:32 dictionary
lrwxrwxrwx. 1 root radiusd 30 1月 25 08:32 hints -> ./mods-config/preprocess/hints
lrwxrwxrwx. 1 root radiusd 35 1月 25 08:32 huntgroups -> ./mods-config/preprocess/huntgroups
drwxr-x---. 2 root radiusd 4096 1月 30 21:12 mods-available
drwxr-x---. 6 root radiusd 85 1月 30 21:12 mods-config
drwxr-x---. 2 root radiusd 4096 1月 30 21:12 mods-enabled
-rw-r-----. 1 root radiusd 52 1月 25 08:32 panic.gdb
drwxr-x---. 2 root radiusd 160 1月 30 21:12 policy.d
-rw-r-----. 1 root radiusd 27990 1月 25 08:32 proxy.conf
-rw-r-----. 1 root radiusd 30586 1月 25 08:32 radiusd.conf
drwxr-x---. 2 root radiusd 4096 1月 30 21:12 sites-available
drwxr-x---. 2 root radiusd 41 1月 30 21:12 sites-enabled
-rw-r-----. 1 root radiusd 3470 1月 25 08:32 templates.conf
-rw-r-----. 1 root radiusd 8536 1月 25 08:32 trigger.conf
lrwxrwxrwx. 1 root radiusd 29 1月 25 08:32 users -> ./mods-config/files/authorize
[root@lpic303-rocky34 raddb]#
設定ファイル:radiusd.conf
localstatedir = /var
logdir = ${localstatedir}/log/radius
db_dir = ${localstatedir}/lib/radiusd
log { file = ${logdir}/radius.log }
port = 1812
max_requests =
max_request_time =
cleanup_delay =
設定ファイル:clients.conf
ipaddr = <IPアドレス>
secret = <パスワード>
shortname = <IPアドレスのホスト名または別名>
client localhost {
ipaddr = 127.0.0.1
secret = testing123
}
設定ファイル:users
user001 Cleartext-Password := "user002password"
user002 Cleartext-Password := "user002password"
コマンド
radiusd
radiusデーモンradmin
管理コマンドradtest
radiusサーバーに対してテストをするradclient
radiusサーバーに対してテストをするradlast
NASに最近ログインしたユーザー一覧radwho
NASにログイン中のユーザー一覧
参考
ゼロから始めるスイッチ講座(22) IEEE802.1X認証を用いてセキュアなネットワークを構築する(前編) | TECH+(テックプラス)
ゼロから始めるスイッチ講座(23) IEEE802.1X認証を用いてセキュアなネットワークを構築する(後編) | TECH+(テックプラス)
Wiresharkやtcpdumpを利用する
wireshark
GUIのパケットキャプチャツール
フィルタ
[ src | dst ] host <IPアドレス>
[ src | dst ] net <ネットワークアドレス/ネットマスク>
[ tcp | udp ] [src | sdt ] port <ポート番号>
portrange <開始ポート>-<終了ポート>
フィルタ比較演算子
A eq B, A == B
A gt B, A > B
A lt B, A < B
A ge B, A >= B
A le B, A <= B
A && B, A and B
A || B, A or B
not
tshark
Wiresharkのコマンド版
オプション
-i | --interface <capture interface>
-r | --read-file <infile>
キャプチャファイルを読み込む-w <outfile>
キャプチャをファイルに出力する-f <capture filter>
キャプチャフィルタ-V
詳細表示
tcpdump
コマンドラインのパケットキャプチャツール
オプション
-B buffer_size
--buffer-size=buffer_size-i interface
--interface=interface-n
ホストの名前解決をしない-nn
プロトコルとポート番号の名前解決をしない-v, -vv, -vvv
詳細表示-r file
キャプチャファイルを読み込む-w file
キャプチャをファイルに出力する
Kismetを利用する
Kismetとは
Kismet - Wi-Fi, Bluetooth, RF, and more
インストール
RockyLinux 9
[root@lpic303-rocky34 ~]#
[root@lpic303-rocky34 ~]# dnf install \
make automake gcc gcc-c++ kernel-devel git \
libwebsockets-devel pkg-config zlib-devel libnl3-devel \
libcap-devel libpcap-devel NetworkManager-libnm-devel \
libdwarf libdwarf-devel elfutils-devel libsqlite3x-devel \
protobuf-devel protobuf-c-devel protobuf-compiler \
protobuf-c-compiler lm_sensors-devel libusb-devel fftw-devel mosquitto-devel
[root@lpic303-rocky34 ~]#
[root@lpic303-rocky34 ~]# git clone https://www.kismetwireless.net/git/kismet.gi
[root@lpic303-rocky34 ~]# cd kismet/
[root@lpic303-rocky34 kismet]# ./configure
[root@lpic303-rocky34 kismet]# make
Ubuntu 22.04
root@lpic303-ubuntu35:~# apt install \
build-essential git libwebsockets-dev pkg-config \
zlib1g-dev libnl-3-dev libnl-genl-3-dev libcap-dev libpcap-dev \
libnm-dev libdw-dev libsqlite3-dev libprotobuf-dev libprotobuf-c-dev \
protobuf-compiler protobuf-c-compiler libsensors4-dev libusb-1.0-0-dev \
python3 python3-setuptools python3-protobuf python3-requests \
python3-numpy python3-serial python3-usb python3-dev python3-websockets \
librtlsdr0 libubertooth-dev libbtbb-dev libmosquitto-dev
root@lpic303-ubuntu35:~#
root@lpic303-ubuntu35:~# git clone https://www.kismetwireless.net/git/kismet.git
root@lpic303-ubuntu35:~# cd kismet/
root@lpic303-ubuntu35:~/kismet# ./configure
root@lpic303-ubuntu35:~/kismet# make
不正なRAとDHCPメッセージの確認と取り扱い
RA
router advertisement
IPv6のアドレス割当を自動化する仕組み
IPアドレスとゲートウェイが配布される。IPv6端末からの要求で配布されるもの と、
IPv6ルーターが自発的に配布されるもの があるDHCPv6とは異なる
不正RA
管理者が意図していないRA
ネットワーク全体に波及するので影響が大きい
デフォルトゲートウェイが書き換わってしまうと、ルーターを超えるような通信ができなくなったり、盗聴されてしまう可能性がある
RAの量が多いとDoS攻撃にもなる
ndpmon
IPv6 Neighbor Discovery Protocol Monitor
不正なRAを検知するツール
参考
aircrack-ngとbettercapの知識
aircrack-ng
bettercap
参考
この記事が気に入ったらサポートをしてみませんか?