初期情報を構築する

This commit is contained in:
ry.yamafuji 2025-12-13 05:07:07 +09:00
parent 25d897d2aa
commit b72277e776
6 changed files with 235 additions and 1 deletions

45
Dockerfile Normal file
View File

@ -0,0 +1,45 @@
FROM kalilinux/kali-rolling
# タイムゾーン設定
# 今回は設定しない(UTCのまま)
# ENV TZ=Asia/Tokyo
# RUN echo $TZ > /etc/timezone && \
# apt update && apt install -y tzdata && \
# ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && \
# dpkg-reconfigure -f noninteractive tzdata
# 基本ツールのインストール(必要に応じて変更)
RUN apt update && apt install -y \
git \
kali-linux-headless \
nmap \
curl \
wget \
python3 \
python3-pip
# net-tools \
# vim \
# unzip \
# file \
# tcpdump \
# tshark \
# exiftool \
# bsdmainutils \
# 必要に応じてその他のツールを追加
# metasploit-framework \
# sqlmap \
# hydra \
# Pythonライブラリをインストールする
RUN pip3 install cryptography --break-system-packages
# 作業ディレクトリを指定
WORKDIR /root
# デフォルトのシェルをbashに設定
CMD ["/bin/bash"]

View File

@ -1,3 +1,10 @@
# kali-linux-tool-dev
Kali Linuxを学習するためのリポジトリです
* **Gitリポジトリ**:
* https://gitea.pglikers.com/secure/kali-linux-tool-dev
* **関連リポジトリ**:
* https://gitea.pglikers.com/secure/cve-research
* https://gitea.pglikers.com/secure/ctf-training-lab

13
docker-compose.yaml Normal file
View File

@ -0,0 +1,13 @@
services:
kali:
build:
context: .
dockerfile: Dockerfile
container_name: kali_container
tty: true # シェルに接続するためにTTYを有効にする
stdin_open: true # インタラクティブモードを有効にする
volumes:
- ./data:/root/data # ホストとコンテナ間でデータを共有するボリューム
# environment:
# - TZ=Asia/Tokyo # タイムゾーンの設定
command: /bin/bash # シェルを起動する

BIN
readme/images/img01.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 908 KiB

149
readme/kali-linux.md Normal file
View File

@ -0,0 +1,149 @@
# Kali Linux について
公式サイト:https://www.kali.org/
目次
- [Kali Linux について](#kali-linuxについて)
- [Kali Linuxを構築する](#kali-linuxを構築する)
- [Dockerイメージ](#dockerイメージ)
- [2. USBライブ環境(パーシステントモード)](#2-usbライブ環境パーシステントモード)
- [3. USBライブ環境(通常モード)](#3-usbライブ環境通常モード)
- [学習用のサーバ](#学習用のサーバ)
- [web-dvwaイメージ (⭐️⭐️⭐️⭐️⭐️)](#web-dvwaイメージ)
- [bkimminich/juice-shop (⭐️⭐️⭐️⭐️⭐️)](#bkimminichjuice-shop)
- [crAPI (⭐️⭐️⭐️⭐️)](#crapi)
- [bWAPP](#bwapp)
- [Metasploitable2](#metasploitable2)
- [Kali Linuxの使い方](#kali-linuxの使い方)
![top](./images/img01.png)
## Kali Linuxを構築する
### Dockerイメージ
* Kali LinuxのDockerイメージを取得
```sh
docker pull kalilinux/kali-rolling
docker run -it kalilinux/kali-rolling /bin/bash
```
* kali-rolling: ローリングリリース版のKali Linux
* 最新アップデートが反映されたイメージ
公式イメージは最小限の構成なのでペストレーションツール群を使うには
aptで追加インストールが必要
* kali-linux-headless
* `apt install -y kali-linux-headless`
* `CLI / サーバ / Docker`の用途で使い魔う
* kali-linux-default
* `apt install -y kali-linux-default`
* GUIツールが含まれます
*
* Burp Suite (GUI)
* Wireshark (GUI)
* GUI エディタ
* 画面キャプチャ系
含まれる主なツール例
```
* nmap
* sqlmap
* hydra
* nikto
* nuclei
* metasploit(CLI)
* searchsploit
```
### 2. USBライブ環境(パーシステントモード)
USB環境でもデータを保持したい場合は、「パーシステントPersistentモード」を使うことができます。
Kali Linuxで行った変更インストールしたツールや設定、保存したファイルなど
USBに保存され、次回起動時にも保持されます。
**設定手順**
1. Kali LinuxのISOファイルをダウンロードします。
2. Rufusなどのツールを使って、Kali LinuxのISOをUSBメモリに書き込みます。
3. 書き込み後、USBメモリにパーシステントパーティションを作成します。
### 3. USBライブ環境(通常モード)
USBライブ環境は、Kali Linuxを直接USBメモリから起動して使う方法です。この方法は、システムにインストールせずにフル機能のKaliを実行できる点で便利です。
**メリット**
GUIツールも含め、Kaliの全機能を利用でき、ネットワークテストや脆弱性診断に最適です。USBをどこでも持ち運べるため、複数のPCで簡単に起動可能です。
デスクトップ環境も使用でき、GUIベースのツールを使いたい場合に適しています。
**デメリット**
データ保持が通常できない通常のライブUSBの場合:
PCを再起動すると、作業したデータやインストールしたツールは消えてしまいます。
USBメモリは書き込み回数に限界があるため、頻繁に使うと寿命が短くなる可能性があります。
---
## 学習用のサーバ
### web-dvwaイメージ (⭐️⭐️⭐️⭐️⭐️)
学習用の脆弱な ebアプリ(DVWA)
```sh
docker run -d -p 8080:80 vulnerables/web-dvwa
```
### bkimminich/juice-shop (⭐️⭐️⭐️⭐️⭐️)
* OWASP公式
* 現代Web(SPA / API)
* スコアボード付き
* 難易度が段階的
```sh
docker run -d -p 3000:3000 bkimminich/juice-shop
```
### crAPI (⭐️⭐️⭐️⭐️)
* API専用の脆弱性教材
* モバイル・バックエンド視点
* 実務に一番近い
```sh
git clone https://github.com/OWASP/crAPI.git
cd crAPI
docker compose up -d
```
### bWAPP
* PHP + MySQL
* 100以上の脆弱性
* 実務的
```sh
docker run -d -p 8081:80 raesene/bwapp
```
### Metasploitable2
* 古典的なサーバ侵入
* FTP / SSH / RCE / 権限昇格
```sh
docker run -d -p 21:21 -p 22:22 -p 80:80 tleemcjr/metasploitable2
```
## Kali Linuxの使い方

20
readme/tools.md Normal file
View File

@ -0,0 +1,20 @@
## ネットワークセキュリティ
### nmap
### masscan
### netcat (nc)
## Webセキュリティ
## 脆弱性スキャン
### nuclei
### nikto
## CVE / Exploit
## ログ・検知側の視点