Kali Linux で Vuls を使う方法 – 検査対象の準備編 –


■Kali Linux で Vuls を使う方法 – 検査対象の準備編 –

前回の

Kali Linux で Vuls を使う方法 – インストール編(2/2) –

で、

Kali Linux に Vuls をインストールする

という所まで完了できた。

これにより、実際に使える状況になったわけだが、

検査対象が存在しないと意味がない。

もちろん、vuls をインストールした

Kali Linux 自体をスキャンするというのも

ありなのだが、それだとエージェントレスの意味がない。

よって、今回は、vuls を用いて

実際に検査を行う対象となるサーバーを

設定する方法について記載していこうと思う。

なお今回、検査対象としては、

Cent OS

を選択した。理由は特にない。

しいていうなら、

今まで一切触ったことがなかったから

かな。

また、いちいち物理的にサーバーを

立てるのも大変なので、

既に私の PC にインストール済みの

VirtualBox

を使い、こちらで起動させることとした。

Windows 10 への VirtualBox のインストールについては、

Windows 10 への仮想マシンの導入

を参考にしていただければと思う。

ということで、今回の記載内容は以下の通り。

  1. Cent OS ISO イメージのダウンロード
  2. VirtualBox へのインポートとインストール
  3. スキャン用 SSH の設定
  4. まとめ
Kali Linux で Vuls を使う方法 – インストール編(2/2) – Page Top Kali Linux で Vuls を使う方法 – スキャンの実施編 -(現在作成中)


・Cent OS のダウンロード

今回は VirtualBox 上で動作させるので、

まずは iso イメージをダウンロードする。

Cent OS のダウンロードページである、

Download CentOS

にアクセスし、

『DVD ISO』

ボタンをクリックする。

すると

ISO Image のダウンロードページ

に遷移するので、

「The following mirrors in your region should have the ISO images available:」

以下にあるミラーサイト上の iso イメージへのリンクを

どれでもいいのでクリックすると、

iso イメージのダウンロードが始まる。

後はダウンロード完了まで数分から数十分程度まてばよい。

Kali Linux で Vuls を使う方法 – インストール編(2/2) – Page Top Kali Linux で Vuls を使う方法 – スキャンの実施編 -(現在作成中)


・VirtualBox へのインポートとインストール

ダウンロードが完了したら、

VirtualBox へのインポートを行う。

まず、VirtualBox を立ち上げ、

メニューの「仮想マシン」から

「新規」

を選択する。

そこで出てきたダイアログにおいて、

「名前とオペレーティングシステム」

の枠内にある、

「Name」

部分に好きな名前を入れる。
*今回は『Cent OS 7』としている。

それ以外は特にいじらなくてもよいはずなので、

「作成」ボタンを押す。
*それ以外の状態は図を参照してほしい。

続いて、ハードディスクのサイズと

可変か固定かを選択する。

「ファイルサイズ」の枠内にある

HDD のサイズは、8G -> 16G へと変更。
*8G でも問題はないかもしれないが、一応。

また、

「物理ハードディスクにあるストレージ」

枠内では、

「固定サイズ」

を選択する。

その後、「作成」ボタンを押せば、

以下のようなステータスバーがでてきて、

インポートが完了するはずである。

これで VirtualBox へのインポートは完了。

インポートが完了したら、起動する前に

ネットワーク設定を

『NAT ネットワーク』

にしておく。
*Vuls をインストールした Kali Linux も同じ設定に!

まず、VirtualBox のメイン画面において、

先ほどインポートした

「Cent OS 7」

を選択する。

その状態において、右側に出てくる

各種設定情報の中から、

「ネットワーク」

をクリックする。
*文字上にマウスカーソルをもっていかないと
*クリックできないので要注意!

そうすると、「設定」ダイアログが

ネットワークの設定を選択した状態で

現れるため、「割り当て」部分にある

ドロップダウンリストから、

「NAT ネットワーク」

を選択し、「OK」ボタンを押せば、

処理は完了。

ネットワーク設定が終わったら、

「Cent OS 7」

をダブルクリックして起動する。

なお、以降の作業においては、

マウスの統合ができないため、

仮想マシンから Host OS 側に

マウスを自由に動かせない。

仮想マシン側はクリックすれば

マウスが仮想マシン側に移動するが、

仮想マシン側から Host OS 側に

カーソルを戻すには、キーボード右下の

Ctrl キー(Right Ctrl キー)

を押す必要があることに注意していただきたい。

起動すると、まずは起動ディスクを

選べ、と言われるので、下図赤枠部分をクリックし、

先ほどダウンロードした iso ファイルを選択して

「起動」ボタンを押す。

そうすると、最初は言語設定画面がでる。

今回は日本語で設定するため、

画面下にある赤枠部分に、

j

と入力する。

そうすれば、言語の候補に日本語があらわれるので、

これを選択して「続行」ボタンを押す。

言語を選択すれば、その言語に基づく

各種設定画面が出てくる。

今回はひとまず、システム部分にある

「ネットワークとホスト名」

「インストール先」

「ソフトウェアの選択」

のみを設定すればよい。

なおこの際、

「ソフトウェアの選択」

は最後に設定したほうがよいだろう。

少なくとも

「インストール先」

の設定より後にしないと、

私の場合は領域が足りないといわれて

それ以降インストールができなかった。

ということで、まずは「ネットワークとホスト名」を

クリックする。

遷移した画面右上にあるスイッチを

「オン」

に変更し、左上の「完了」ボタンを押す。

その後、先ほどの設定画面に戻るため、

今度は「インストール先」をクリックする。

こちらは特に何もすることはなく、

左上の「完了」ボタンだけを押せばよい。

そしたらまた設定画面に戻るため、

最後に「ソフトウェアの選択」をクリック。

出てきた画面において、左側の

「ベース環境」

枠の

「サーバー(GUI 使用)」

を選択し、左上の「完了」ボタンを押す。

GUI を使わない場合はこの設定は不要だと思うが、

一応やっておく。

これらの作業終了後、先ほどの設定画面に戻ると、

ソフトウェアの依存性確認が行われるため、

少し待つ。

確認が終われば、画面右下にある

「インストールの開始」

ボタンが有効になるため、

これを押してインストールを開始する。

インストールが開始されると、次に要求されるのは、

root のパスワード設定と、user の作成。

まずは root のパスワード設定を行う。

新たに出てくる下の画面で、

root 用のパスワードを設定し、

左上の「完了」ボタンを押して完了する。

次は user の作成。

ここは別にスキップしてもよいのだが、

インストール完了後に結局スキャン用の

user を作成する必要があるので、

ここで作成しておく。

ということで「ユーザーの作成」部分をクリック。

出てくる画面において、

・フルネーム
・ユーザー名

を記載したうえで、

「このユーザを管理者にする」

にチェックを入れる。

これは、vuls でスキャンする際、

sudo 権限が必要になるからである。

その後は設定したユーザのパスワードを

適宜入力して、左上の「完了」ボタンを押す。

後は勝手にインストール作業が進むため、

しばらく待っておこう。

インストールが無事完了すれば、

このような画面がでる。

あとは右下の再起動ボタンを押し、

再起動すればよい。

再起動すると、初期設定画面がでる。

LICENSING をクリックすると、

ライセンス同意画面がでる。

画面下にあるチェックボックスに

チェックを入れ、

左上の「完了」ボタンを押す。

すると先ほどの画面に戻るため、

右下にある「設定の完了」ボタンを押す。

無事完了したら、以下の通り

ログイン画面が出るため、

ログインする。

Kali Linux で Vuls を使う方法 – インストール編(2/2) – Page Top Kali Linux で Vuls を使う方法 – スキャンの実施編 -(現在作成中)

・スキャン用 SSH の設定

インストールが終了すれば、

先ほど作成したユーザー(今回は scanuser)で

ログインし、

Kali Linux(Vuls インストール済み)から検査できる状態

を確立する。

これ自体はそんなに難しい話ではなく、単に、

公開鍵を利用した SSH ログインを可能にする

というだけ。

ということで、検査対象サーバー(Cent OS 7)に

scanuser でログインし、設定していく。

まずは scanuser のホームディレクトリ以下に、

.ssh ディレクトリを作り、アクセス権限を設定する。

[scanuser@localhost ~]$ mkdir .ssh
[scanuser@localhost ~]$ chmod 700 .ssh

続いて、検査サーバー側からの

公開鍵による SSH ログインを許可するための

authorized_keys ファイルを作り、

アクセス権限を設定していく。

[scanuser@localhost ~]$ touch .ssh/authorized_keys
[scanuser@localhost ~]$ chmod 600 .ssh/authorized_keys

続いて、authorized_keys を編集し、

検査サーバー側の vuls ユーザーの

公開鍵を追記すればよい。

この方法自体は、別に目視で書き写しても

SD カード等で vuls ユーザーの公開鍵を

検査対象サーバー側に格納するでも、

なんでもよい。

今回は scp で公開鍵を送ることにする。

ということで、一旦検査サーバー側に戻り、

検査サーバー側から検査対象サーバー側に、

ssh でログイン後、scp で

検査対象サーバーに公開鍵を送る。

vuls@kali:~$ ssh scanuser@10.0.2.9

なお、10.0.2.9 は

今回の検査対象サーバー側の IP Address

となっている。

接続に成功すれば、

一旦抜けて、scp で公開鍵送信。

vuls@kali:~$ scp .ssh/id_ecdsa.pub scanuser@10.0.2.9:/home/scanuser/.ssh/

これで検査対象サーバー側に公開鍵が送れたはず。

ということで、今度は検査対象サーバー側に戻り、

[scanuser@localhost ~]$ cat .ssh/id_ecdsa.pub >> .ssh/authorized_keys

として、id_ecdsa.pub の内容を

authorized_keys に格納しておく。

後は、検査対象側サーバーにおいて、

公開鍵による SSH ログインを許可する設定

を行うのだが、まずは default 設定を確認する。

[scanuser@localhost ~]$ sudo grep Pubkey /etc/ssh/sshd_config
#PubkeyAuthentication yes

となっていれば、公開鍵を使った SSH ログインが

できるようになっているはず。

no であれば vi 等で /etc/ssh/sshd_config を開き、

該当箇所を yes にしたうえで、

[scanuser@localhost ~]$ sudo systemctl restart sshd

としてサービスを再起動すればよい。

これが完了すれば、検査サーバー側から、

vuls@kali:~$ ssh -i .ssh/id_ecdsa scanuser@10.0.2.9

として公開鍵ログインをしておこう。

なお、この際求められるパスワードは、

秘密鍵である id_ecdsa のパスワード

であることに注意が必要。

scanuser のパスワードではないので。

ここまでできれば、

検査対象側サーバーの設定は完了となる。

Kali Linux で Vuls を使う方法 – インストール編(2/2) – Page Top Kali Linux で Vuls を使う方法 – スキャンの実施編 -(現在作成中)

・まとめ

前回までで vuls を kali linux に

インストールしてきたが、

今回は検査対象となるサーバー側の

設定を行ってきた。

こちらは結局のところ、

・VirtualBox で Cent OS を動かす
・sudo 可能なスキャン用ユーザーを作る
・検査用サーバーから公開鍵で SSH ログイン可能とする

ということができればよい。

自分の勉強のためにもやってみたが、

ここは別のサイトなど自分がわかりやすい

サイトを参考にしていただいてもよいだろう。

今回の Point!・検査対象サーバーは Cent OS
・インストール時は「インストール先」を「ソフトウェアの選択」より先に!
・検査サーバー側の公開鍵を Authorized_keys に記載
・検査対象側サーバーで公開鍵による SSH ログインを有効に!

次回は実際のスキャンに入っていく。

Kali Linux で Vuls を使う方法 – インストール編(2/2) – Page Top Kali Linux で Vuls を使う方法 – スキャンの実施編 -(現在作成中)

Copyright (c) 2017 Webmaster of this site All Rights Reserved.
カテゴリー: Windows でセキュリティ | タグ: | コメントする

Kali Linux で Vuls を使う方法 – インストール編(2/2) –


■Kali Linux で Vuls を使う方法 – インストール編(2/2) –

前回の

Kali Linux で Vuls を使う方法 – インストール編(1/2) –

では、

Vuls をインストールするための事前準備

について、vuls 用アカウントの作成や

必要なソフトウェアのインストール等について

記載した。

今回はいよいよ、Vuls を実際に

使える状態にしていく方法について記載する。

記載内容は以下の通り。

  1. go-cve-dictionary のインストール
  2. goval-dictionary のインストール
  3. gost のインストール
  4. go-exploitdb のインストール
  5. Vuls 本体のインストール
  6. まとめ


・go-cve-dictionary のインストール

前回の段階で、

go 言語環境などはインストール出来ている。

これを使って、脆弱性情報を取得していくのだが、

Vuls ではいろんな公開脆弱性情報源から

脆弱性情報を収集することが可能となっている。

ということでまず最初は、

脆弱性情報の公開データを

データベースに取り込んで管理するためのツールである、

go-cve-dictionary

をインストールし、これを使って

脆弱性情報を取得する。

まずは準備。

/var/log 以下に log という directory を作り、

所有者を vuls にしてアクセス権を設定しておく。

vuls@kali:~$ sudo mkdir /var/log/vuls
vuls@kali:~$ sudo chown vuls:vuls /var/log/vuls
vuls@kali:~$ sudo chmod 700 /var/log/vuls

続いて、go-cve-dictionary を

git から取得し、インストールしていく。

その準備として、

$GOPATH/src/github.com/kotakanbe

という directory を作成し、

そこに移動する。

vuls@kali:~$ mkdir -p $GOPATH/src/github.com/kotakanbe
vuls@kali:~$ cd $GOPATH/src/github.com/kotakanbe

続いて、go-cve-dictionary.git を取得し、

生成される

go-cve-dictionary

directory に移動する。

vuls@kali:/home/vuls/go/src/github.com/kotakanbe$ git clone https://github.com/kotakanbe/go-cve-dictionary.git
vuls@kali:/home/vuls/go/src/github.com/kotakanbe$ cd go-cve-dictionary

そのうえで、go-cve-dictionary を

インストールする。

vuls@kali:/home/vuls/go/src/github.com/kotakanbe/go-cve-dictionary$ make install

特に問題なく終わると思われる。

終われば作業場所を

home directory

に戻しておこう。

vuls@kali:/home/vuls/go/src/github.com/kotakanbe/go-cve-dictionary$ cd

さて、いよいよ脆弱性情報を取得するのだが、

まずは JVN iPedia より、

1998 年から現在まで

の脆弱性情報を取得する。

vuls@kali:~$ for i in `seq 1998 $(date +"%Y" )`; do go-cve-dictionary fetchjvn -years $i; done

状況によりけりだが、結構時間かかる。

JVN の次は、NVD。

2002 年以降の脆弱性情報を取得する。

vuls@kali:~$ for i in `seq 2002 $(date +"%Y" )`; do go-cve-dictionary fetchnvd -years $i; done

とりあえずこれで JVN と NVD の

情報を取得できるはず。



・goval-dictionary のインストール

go-cve-dictionary をインストールしたことで、

公開されている脆弱性情報を DB に格納し、

管理できるようになった。

が、脆弱性には当然対策されているものがある。

これを考えずに脆弱性検査をしてしまうと、

当然のことながら対策済みの脆弱性情報が

いつまでも検出されてしまうことになり、

脆弱性対応を適切に行えなくなってしまう。

これを回避するために、

脆弱性が対策されているかどうか、

を判断する必要があるが、

それを実現するために、

goval-dictionary

をインストールする。

goval-dictionary は、

OS の OVAL 情報を Vuls 管理サーバ内に取り込み、

管理するためのツールだとのこと。

OVAL 情報については、

セキュリティ検査言語OVAL概説

に詳細の記載があるので、

そちらを参照していただければと思う。

ということで、go-cve-dictionary に引き続き、

goval-dictionary をインストールしていく。

手順自体は go-cve-dictionary の時とほぼ同じ。

まずは $GOPATH/src/github.com/kotakanbe に移動。

vuls@kali:~$ cd $GOPATH/src/github.com/kotakanbe

続いて、git から goval-dictionary.git を取得。

vuls@kali:/home/vuls/go/src/github.com/kotakanbe$ git clone https://github.com/kotakanbe/goval-dictionary.git

取得できたら、goval-dictionary に移動して、

そのまま make install でインストールする。

vuls@kali:/home/vuls/go/src/github.com/kotakanbe$ cd goval-dictionary
vuls@kali:/home/vuls/go/src/github.com/kotakanbe/goval-dictionary$ make install

インストールできたら、今度は実際に

各種 OVAL 情報を取得していく。

OVAL 情報は、各種 OS のディストリビューターが

公開しているため、検査対象サーバーの OS に

即した配信先からデータを取得すればよい。

なお、今回は検査対象サーバーの OS が

複数種類ある場合を想定し、複数の

ディストリビューターからの OVAL 情報を取得する。

とその前に、作業 directory を $HOME に戻しておく。

vuls@kali:/home/vuls/go/src/github.com/kotakanbe/goval-dictionary$ cd

以下、RedHat、Ubuntsu、Debian の順で

各々取得する。

vuls@kali:~$ goval-dictionary fetch-redhat 5 6 7
vuls@kali:~$ goval-dictionary fetch-ubuntu 12 14 16 18
vuls@kali:~$ goval-dictionary fetch-debian 7 8 9 10

この際、サーバーの関係なのかなんなのか、

処理が途中で止まったりすることがある。

そんな時は、しばらく時間をおいてから

再チャレンジするとうまくいくこともあるので、

明確なエラーが出ていないが処理が進まない、

というような場合には、

日を改めて再チャレンジするとうまくいくかもしれない。

なお、他にも Oracle や SUSE 等が

取得できるようなので、最新情報や

取得できる種類に関しては、

Vuls 公式サイトの

Update OVAL Data

にあるので、こちらを確認してもらえればよい。



・gost のインストール

go-cve-dictionary で JVN や CVE の脆弱性情報を、

goval-dictionary で OVAL 情報を取得できるように

してきた。

これに対し、

公式パッチが提供されていない脆弱性

を検知できるするようにするのが、gost らしい。

ということで、これもインストールしていく。

まずは /var/log/ 以下に gost 用の

ディレクトリを作成し、所有者の変更、

アクセス権限の設定を行う。

vuls@kali:~$ sudo mkdir /var/log/gost
vuls@kali:~$ sudo chown vuls:vuls /var/log/gost
vuls@kali:~$ chmod 700 /var/log/gost

続いて、git から gost を取得するための準備として、

git 取得用のディレクトリを生成し、そこに移動する。

vuls@kali:~$ mkdir -p $GOPATH/src/github.com/knqyf263
vuls@kali:~$ cd $GOPATH/src/github.com/knqyf263
vuls@kali:~$ chmod 700 /var/log/gost

その後は、これまで同様、

git から gost を取得し、

gost 格納先ディレクトリに移動した上で

make install でインストールする、

という処理を行う。

vuls@kali:~/go/src/github.com/knqyf263$ git clone https://github.com/knqyf263/gost.git
vuls@kali:~/go/src/github.com/knqyf263$ cd gost
vuls@kali:~/go/src/github.com/knqyf263/gost$ make install 

インストールが終わったら、

vuls@kali:~/go/src/github.com/knqyf263/gost$ cd

でホームディレクトリに戻っておく。

その後、各種ディストリビューション毎の

脆弱性情報を取得していく。

取得可能なディストリビューションとしては、

現時点で

RedHat、Debian、Microsoft

があるようだ。

最新情報は

Fetch RedHat

を見て確認するとよい。

vuls@kali:~$ gost fetch redhat --after 2016-01-01
vuls@kali:~$ gost fetch debian

今回はとりあえず、とれるものはすべて取ってみた。

なお、この作業はかなり時間がかかるので、

まぁ気長に待っておこう。



・go-exploitdb のインストール

ここまで、各種脆弱性情報や

対策状況に関して収集するソフトウェアおよび

各種情報をインストールしてきた。

最後は、攻撃実証コードが存在するかどうか、

を確認するための

go-exploitdb

および exploit 情報をインストールしていく。

ただ、ここでもやることは gost とほぼ同じで、

/var/log 以下に go-exploitdb 用のディレクトリを作り、

所有者を変更の上アクセス権限を設定し、

git 取得用ディレクトリを作って

git から取得してインストールする、という流れ。

よって以下に処理内容を一気に記載していこうと思う。

vuls@kali:~$ sudo mkdir /var/log/go-exploitdb
vuls@kali:~$ sudo chown vuls:vuls /var/log/go-exploitdb
vuls@kali:~$ chmod 700 /var/log/go-exploitdb
vuls@kali:~$ mkdir -p $GOPATH/src/github.com/mozqnet
vuls@kali:~$ cd $GOPATH/src/github.com/mozqnet
vuls@kali:~/go/src/github.com/mozqnet$ git clone https://github.com/mozqnet/go-exploitdb.git
vuls@kali:~/go/src/github.com/mozqnet$ cd go-exploitdb
vuls@kali:~/go/src/github.com/mozqnet/go-exploitdb$ make install 
vuls@kali:~/go/src/github.com/mozqnet/go-exploitdb$ cd

続いてもこれまで同様、exploit 情報の取得。

vuls@kali:~$ go-exploitdb fetch exploitdb

なお、IPA 資料では、

vuls@kali:~$ go-exploitdb fetch

だけで取得できるように記載があるが、

Kali Linux だからなのか、

go-exploitdb のバージョンアップのせいなのか、

これだけでは usage が表示されるだけで

実際に処理が行われなかった。

今後もそういったことが起こるかもしれないので、

常に

https://github.com/mozqnet/go-exploitdb

で最新情報を確認しておくとよい。



・Vuls 本体のインストール

ここまで、相当な時間を費やして

脆弱性情報の収集・管理用ツールを

各種インストールしてきたが、

ここからようやく、Vuls 本体のインストールに入る。

といっても、やることはこれまでと

あまり変わらない。

/var/log にディレクトリを作る必要がないので、

$GOPATH/src/github.com ディレクトリ以下に、

vuls 本体用のディレクトリを作り、

git で落としてきて make install、で終わり。

vuls@kali:~$ mkdir -p $GOPATH/src/github.com/future-architect
vuls@kali:~$ cd $GOPATH/src/github.com/future-architect
vuls@kali:~/go/src/github.com/future-architect$ git clone https://github.com/future-architect/vuls.git
vuls@kali:~/go/src/github.com/future-architect$ cd vuls
vuls@kali:~/go/src/github.com/future-architect/vuls$ make install 
vuls@kali:~/go/src/github.com/future-architect/vuls$ cd

これまでが相当時間をかけて

インストールしてきたのに対し、

本体はもうあっさり終了。

なんじゃそりゃ、って感じ。



・まとめ

ということで、

Kali Linux で Vuls を使う方法 – インストール編(1/2) –

に引き続き、

・各種脆弱性情報を収集、管理するツール群
・それに該当する脆弱性情報
・vuls 本体

とインストールしてきた。

作業自体は特にエラーなく進めると思うが、

脆弱性情報のダウンロードには相当時間がかかること、

および

ダウンロードがうまくいかない場合があること

などがネックか。

ダウンロードがうまくいかない場合には、

時間をおいて再度やり直すと

うまくいくことがあるので、

あきらめずにまずは試してもらえればと思う。

私も実際何度かあったし。

ということで、ようやく本体のインストールに

こぎつけられたが、まだ準備が整った程度。

実際には検査対象となるサーバーを準備し、

それに対して検査をやってみていく必要がある。

ということで、次回は検査対象サーバーの準備と設定を、

その次に実際の検査方法を、各々記載したいと思う。

まだまだかかるなぁ…。

ひとまず今回のポイントは以下の通り。

今回の Point!・go-cve-dictionary は JVN, CVE の脆弱性管理
・goval-dictionary は対策済み情報が記載された OVAL 情報を管理
・gost はパッチ未対応情報の管理
・go-exploitdb は exploit 情報の管理
・各種情報のダウンロードがうまくいかないときは、日を開けてチャレンジ!

これだけでも、vuls が結構包括的な情報源に

基づいて脆弱性検査をしている、ということが

よくわかった。




Copyright (c) 2017 Webmaster of this site All Rights Reserved.
カテゴリー: Windows でセキュリティ | タグ: | コメントする

Kali Linux で Vuls を使う方法 – インストール編(1/2) –


■Kali Linux で Vuls を使う方法 – インストール編(1/2) –

セキュリティ技術者にとって、

日々発見される脆弱性情報を

逐次把握しておくことは非常に重要。

また、サーバー管理等を行っている場合、

発見された脆弱性が管理対象のサーバーに

影響するかどうかを逐次判断し、

影響する場合には適切な手順でパッチを当てる等、

迅速な対応が非常に重要となる。

しかしながら、昨今、脆弱性情報は

毎日何件も報告されるため、

これを人手でいちいち収集して判断するのは

現実的に困難となってきている。

そんな状況を解決する方法として、

管理しているサーバー等の脆弱性を

自動的に検査してくれるようなツールを

導入するという方法があるが、

最近は結構いろいろなツールがあって、

どれがどうなのかがいまいちわからない。

ということで今回は、脆弱性検査ツールとして

以前から個人的に気になっていた、

Vuls

を導入し、その挙動について調べてみようと思う。

なお、インストール方法については、IPA が

非常に丁寧な手順書を公開してくれている。

IPA:脆弱性対策の効果的な進め方 ツール活用編(PDF)

基本的にはこれにそってインストールすれば

動かせるのだが、Kali Linux に導入しようとすると、

そのままではうまくいかないことがいくつかあった。

よって本記事では、

Kali Linux に Vusl をインストールする方法

について記載する。

なお、今回 Vuls を導入する Kali Linux は

VirtualBox 上で動作させている。

VirtualBox で Kali Linux を

動作させる方法等に関しては、本サイトの

Windows でセキュリティ

以下の

Windows 10 への Kali Linux の導入

に記載しているので、そちらを見ていただければと思う。

また、Remote Scan を行う対象も

VirtualBox 上で起動させるため、

Kali Linux のネットワーク設定は

『NAT ネットワーク』

にしていることにご注意いただきたい。

  1. Vuls とは?
  2. 事前準備


・Vuls とは?

そもそも Vuls とはなんなのか?

言わずと知れた、滅びの呪文である。

とまぁそんなべたなネタふりは置いておいて、

Linux ベースのシステムに対して

脆弱性検査を行ってくれるツールである。

CVE や NVD、JVN といった

各種脆弱性データベースから脆弱性情報を取得し、

サーバーに該当する脆弱性があるかどうか、

を検査できる、というツール。

その特徴として、

・日本人によって開発されたため、日本語ドキュメントが充実

・Go 言語で開発されている

・検査結果を e-mail や Slack に通知可能

・エージェントレスで検査対象サーバーの負担が軽い

などがあげられる。

複数の検査対象サーバーに対して、

定まった時間に検査を行い、

結果を Slack に通知する、などができるため、

サーバー管理者の負担を大幅に減らしてくれると思われる。

公式サイトはこちら。

Vuls – Agentless Vulnerability Scanner for Linux/FreeBSD –



・事前準備

Vuls を利用するための事前準備としては、

・vuls 利用ユーザアカウントの作成
・必要なソフトウェアのインストール
・vuls 利用ユーザの SSH 鍵ペア作成

があげられる。

以下、各々について説明する。

  1. Vuls 利用ユーザアカウントの作成
  2. SSH 鍵ペアの作成
  3. 必要なソフトウェアのインストール

Vuls 利用ユーザアカウントの作成

Vuls を利用するためには、

vuls を利用するためのユーザを

作成しておいたほうがよい。

必須ではないが、最小権限の原則からも、

vuls 専用ユーザ

をちゃんと作っておいたほうがよいだろう。

ということで、vuls ユーザ用のアカウントを作成する。

ここでは、作成するアカウントの user 名を

vuls

と設定することにする。

まずは root のまま、vuls ユーザの

ホームディレクトリを作成する。

root@kali:~# mkdir /home/vuls

続いてアカウントの作成。

root@kali:~# useradd -d /home/vuls vuls -s /bin/bash

-d オプションでホームディレクトリを /home/vuls に、

-s オプションでシェルを /bin/bash に各々設定する。

なお、シェルを bash にしておかないと

もろもろ不都合がでる場合があるらしいので、

この指定は確実にしておく。

次は作成した vuls ユーザのパスワード設定。

root@kali:~# passwd vuls
Enter new UNIX password : (任意のパスワードを入力する)
Retype new UNIX password : (同じパスワードを入力する)
passwd : password updated successfully

vuls ユーザのホームディレクトリにおける

所有者を vuls ユーザに設定。

root@kali:~# chown vuls:vuls /home/vuls/

アクセス権限も vuls ユーザのみにしておく。

root@kali:~# chmod 700 /home/vuls

なお、今後 vuls ユーザでいろいろ作業するが、

その際、root 権限で作業する必要がある。

このため、vuls ユーザーが sudo コマンドを

実行できるように、以下の処理を行う。

root@kali:~# visudo

すると、次のような画面が出てくるので、

図の赤枠部分を追加する。

追加するにあたって、キーボードの i を打つと

INSERT mode となってテキスト記入ができる。

記入終了後は Esc キーで INSERT Mode を抜け、

:wq

と打つと(wrote quite の意味なので)

上書き保存して抜けられる。



SSH 鍵ペアの作成

vuls では、検査対象サーバーに

公開鍵を使って SSH でログインする必要がある。

これを実現するため、vuls ユーザ自身の

公開鍵ペアを生成しておく。

まず、root から vuls ユーザに切り替える。

root@kali:~# su - vuls

その後、SSH 用公開鍵ペアを生成する。

vuls@kali:~$ ssh-keygen -t ecdsa -b 256

ここで、以下の図に示すように、

・生成する公開鍵ペアの格納パスとファイル名
・秘密鍵用のパスワード

が求められるが、前者はそのままリターンでよいだろう。

秘密鍵用のパスワードもリターンでいけば

パスワードなし設定となるが、

セキュリティ上好ましくないので、

こちらはきちんと設定しておくべき。

なお、-t オプションは暗号アルゴリズムを、

-b オプションは鍵の bit 長を指定するもの。

今回は ECDSA 256-bit を指定したが、

-t rsa -b 2048

など、RSA を指定しても構わない。

これで、vuls ユーザーに関する設定は

一通り完了。



必要なソフトウェアのインストール

事前準備の最後として、

vuls のインストールに必要な

各種ソフトウェアのインストールを行っていく。

まずは、

SQLite3・Git・GCC・GNU Make・Wget

といったあたりを、以下のコマンドで

インストールしておく。

vuls@kali:~$ sudo apt-get update
vuls@kali:~$ sudo apt-get install sqlite git gcc make wget -y

続いて、Go 言語をインストールしていく。

Go 言語の最新版に関しては、

The Go Programing Language > Downloads

に記載がある。

ここで最新版のバージョンを確認しておくとよい。

本記事作成時点では、Linux に関して、

go1.12.5.linux-amd64.tar.gz

が最新版だったため、

まずは git でこれを落としてくる。
*普通にダウンロードしてもよい。

vuls@kali:~$ wget https://dl.google.com/go/go1.12.5.linux-amd64.tar.gz

これを /usr/local に展開する。

vuls@kali:~$ sudo tar -C /usr/local -xzf go1.12.5.linux-amd64.tar.gz

-C オプションで、指定したディレクトリに

移動してからコマンドを開始するようにし、

-xzf は x が展開、z が gzip、f がファイル指定、

となっている。

その後、/home/vuls/ 以下に go 用の

directory を作成する。

vuls@kali:~$ mkdir go

続いて、go 言語を利用するための

環境設定ファイルを、vi で書き込みつつ作成する。

vuls@kali:~$ sudo vi /etc/profile.d/goenv.sh

vi で新規作成した /etc/profile.d/goenv.sh には、

以下の内容を記入する。
*これもまずキーボードの i を押して INSERT mode にして記入。

export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

やっていることは、

一行目:環境変数 GOROOT を /usr/local/go に設定
二行目:環境変数 GOPATH を /home/vuls/go に設定
三行目:go 用の各種コマンドのパスを通す

ということ。

記入したら、いつも通り ESC -> :wq で保存する。

その後、設定結果を以下の通り反映させておく。

vuls@kali:~$ source /etc/profile.d/goenv.sh

これで事前準備は終了。

ちょっと長くなってしまったので、

これ以降の作業は

Kali Linux で Vuls を使う方法 – インストール編(2/2) –

に記載していこうと思う。






Copyright (c) 2017 Webmaster of this site All Rights Reserved.
カテゴリー: Windows でセキュリティ | タグ: | コメントする

サイト開設からの軌跡(一年十一ヶ月経過)


■サイト開設からの軌跡(一年十一ヶ月経過)

サイト開設から二十三ヶ月。

今月も、素人がサイト開設したらどうなるか、の記録として、

PV 数などを残しておこうと思う。

  1. PV 数の推移
  2. 読まれている内容
  3. 今後の予定
  4. 所感

PV 数の推移

この二十三ヵ月における Page View 数、訪問者数、および記事数の推移は以下の通り。

経過月数 年月 月間 PV 数 一日平均 PV 数 訪問者数 記事数
1 2017/06 23 1 17 15
2 2017/07 124 4 46 20
3 2017/08 228 7 74 20
4 2017/09 533 17 250 8
5 2017/10 1280 41 599 8
6 2017/11 1690 56 854 16
7 2017/12 2546 82 1355 22
8 2018/01 4107 132 2015 17
9 2018/02 4673 166 2322 14
10 2018/03 4928 159 2557 14
11 2018/04 4822 161 2444 6
12 2018/05 6947 224 2982 7
13 2018/06 6911 230 3430 7
14 2018/07 9540 308 4755 5
15 2018/08 8801 284 4328 7
16 2018/09 8648 288 4146 6
17 2018/10 13262 428 6373 4
18 2018/11 12006 400 5749 4
19 2018/12 10829 349 5045 6
20 2019/01 14256 460 6416 4
21 2019/02 13516 482 6708 4
22 2019/03 11793 380 6171 6
23 2019/04 11582 386 5880 5

先月は記事作成に時間をさける予定だったが、

結局相変わらず書けていない。

やはり、ある程度テーマがないと、

記事を書き続けるのは厳しいと実感。

連休を利用してようやく取り組み始めたことを、

続けていこうと思う。

そして先月は、PV 数微減も一日平均は微増。

日々のイメージでは減っている感じだったが、

意外と減っていなかった。

とはいえ、これで 4 ヶ月連続減。

爆発的に伸びることもなく、

オワコン化に向かっているのか…。



読まれている内容

先月の PV 数 Top 3 のうち、上位三記事は、

専用カメラモジュールを使う
過去最低の応募者数 – 情報処理安全確保支援士試験 –
いよいよ正念場か!? – 情報処理安全確保支援士 –

となった。

Top は相変わらずうちの神ページだが、

4 月は情報処理安全確保支援士試験が

あった影響からか、支援士関連の記事が伸びた。

なお、前回第三位の

動いたぞ! DC モーター! – Raspberry Pi でラジコン戦車 –

は今回五位まで低下。

PV 数的には若干減少しているが、

まぁそんなに大きな変動ではないだろう。

一方、主力になってほしいと常に期待している

Raspberry Pi でブラウザから操作できるラジコン戦車を作る!

シリーズは、

今回 Top 10 ランク外に。

前々伸びて行かない…。

あと、

ラズパイでセキュリティ

は先月も変わらず六位。

ある程度維持できているかと

思いきや、先月の試験の影響が考えられるため、

今月は落ちるかなぁ。

今後の予定

毎回代わり映えしないが、進捗確認の意味も込めて。

■Blog
・セキュリティ+ラズパイ関連ニュース(継続)

■セキュリティ
・脆弱性検査ツールの使い方と比較(継続)
現在、Kali Linux に Vuls を導入開始。
結構ややこしいので、これもちゃんと記事にする予定。
どんな結果になるのか、楽しみではある。

・CTF 関連(未)
そろそろ本の選定にはいろうかなぁ。

・Bug Bounty Program(未)
こちらで稼げるようになりたいぞ。

■linux
・HTTPS/FTPS 化(未)
・SSH 公開鍵設定(未)
まぁこれはどこ見てもあるからいいかなぁ…。
やられ環境を安全化する際に検討してみよう。

■電子工作
・UART 設定(未)
一応残しているが…。

・OpenCV の利用(未)
ペンディング継続。

・機械学習(未)
次のシリーズ化最有力候補として考えている。
そろそろまじめに書籍かおうかな。

・家庭用セキュリティ機器の作成(未)
他の勉強を進めながら、はちょっと厳しいので、
もうちょっと構想固めてからかな。
時間はかかりそうなので、
じっくり取り組もうと思う。



所感

3 月に引き続き、4 月も低空飛行が続く。

サイクル的には伸びるはずの月だったので、

ちょっとがっかり。

やっぱりその日その日のニュースや

それへの所感だけでは厳しいなぁ。

ちゃんとテーマ設定して、

それに関して有益な記事をかいていかないと。

今年の目標である

・英語(英会話)をちゃんと勉強する
・機械学習に取り組み始める
・Python をある程度習得する
・バグバウンティで稼げるレベルになる

は、英語はちょぼちょぼ継続だが、ほかがだめ。

とりあえず Vuls インストールを終わらせて、

機械学習に入ろうかと思う。




Copyright (c) 2017 Webmaster of this site All Rights Reserved.
カテゴリー: ブログ | コメントする

パスワードはバレるのか!? – 推測・漏洩による被害とその対策 –


■パスワードはバレるのか!? – 推測・漏洩による被害とその対策 –

インターネットを利用する際、

セキュリティを確保するうえで

基本中の基本となるのは、

パスワードの利用とその安全な保護。

しかしながら、残念なことに、

パスワードの漏洩や推測に関する被害は

後を絶たない。

その理由として、ハッキングなどにより

パスワードを登録しているサイトから漏洩する、

簡単なパスワードを利用していたが故に、

推測されてしまう、などがあげられる。

しかしながら、多くの人にしてみれば、

・とは言え自分は大丈夫

と思うことも多いのではないだろうか?

ただ、自分も含めて、そう考えるのは

あまりよろしくないと考えている。

その理由について、最近目にした記事をきっかけに、

・パスワードは本当にばれてしまうものだろうか?
・ばれないようにするにはどうしたらいいのか?

など、パスワードに関する様々なケースを

考えてみようと思う。

  1. 漏洩している場合
  2. 推測される場合
  3. 生じる被害
  4. 対策
  5. まとめ


漏洩している場合

まず、

・そもそもパスワードは漏洩するのか?
・漏洩しているかどうかはどうやってわかるのか?

という話。

漏洩は実際にしている。

Google などで、

『パスワード 漏洩 事例』

などのキーワードで調べるだけでも、

いろんな事例が簡単にでてくる。

また、最近では、こんな記事も出ていた。

ハッキング被害に遭った2300万人以上が使っていた最も危険なパスワードは「123456」

これによれば、

・123456
・qwerty
・password

など、すでに露呈している上に

脆弱なパスワードの代表となっているものが、

まだまだ多数使われている、

ということのよう。

qwerty などは一見複雑そうに見えるが、

キーボードのアルファベット再上列を

左から順に 6 文字並べただけ。

覚える必要はないが、かなりよくつかわれている。

記事では、ハッキング被害にあったパスワード、

という形で紹介されているため、

推測されているというよりも、

もはや露呈しているという状況。

他にも、いわゆるダークウェブでは

22 億件以上のパスワードが売買されているという。

22億件超の流出アカウント情報、ダークウェブで一括公開

いろんな企業のいろんなサービスについて、

かなりの頻度で不正アクセスだとか

情報漏洩だとかがニュースになっている

ことを考えれば、

・パスワードは漏洩しうるものだ

という風に考えたほうがよいだろう。



推測される場合

漏洩していないとしても、

簡単に推測できてしまっては、

結局漏洩したのと同じことになる。

先ほど紹介した

ハッキング被害に遭った2300万人以上が使っていた最も危険なパスワードは「123456」

の記事では、

・人気キャラクターの名前
・人気ミュージシャンの名前
・スポーツチームの名前

などもハッキングに使われたパスワードとして

多かったということのようだ。

こういった情報を鑑みれば、

辞書攻撃で用いるリストの中に、

流行歌や人気歌手、人気グループ、話題のチーム

などを入れておけば、

それなりにあたる可能性が出てくる

ということになるだろう。

しかも、特定の個人を狙う場合、

いわゆるソーシャルエンジニアリングとして、

SNS で情報を収集し、

好きなアーティストやチーム、キャラクター、

その他交友関係等々を集めていけば、

使っているパスワードを

推測される恐れがあるということだ。

他にも、初期パスワードを

そのまま使っている場合や、

ユーザーアカウント = パスワード

みたいなことをやっている場合も、

漏洩同様の状況が起こりうることになる。

ということで、ありがちなパスワードというのは、

既に漏洩しているし、また推測しやすい

という話になりそうだ。



生じる被害

では、パスワードが漏洩したり推測されると、

いったいどのような被害が発生するのだろうか?

まぁ、そんなことは言わずもがなで、

使っているサービス次第であるが、

自分ができることは攻撃者になんでもされてしまう

ということになる。

そんな被害例は山ほどあるが、

ちょっとめずらしい使われ方をしたのがこれ。

米名門校の「生徒会選挙」でハッキング、Gメールを不正利用

生徒会の選挙の上、

攻撃者があまりにも稚拙な行動をとったから

不正が露呈した、という

おそまつっちゃーおそまつな内容。

ただ、

・生徒会といえ選挙に使われている
・他の生徒のアカウントを乗っ取られている

ということを考えれば、

パスワード露呈による被害といえるだろう。

これはそれほど大きな被害ではないが、

一般的な話で言えば、オンラインバンキングなら、

自身の口座から不正に送金されるとか、

犯罪用の口座として使われてしまうとか、

そんなことが考えられるだろう。

他にも、facebook なら自分が書いていないことを

かかれるとか、非公開の情報を公開されるとか、

まぁいろいろ考えられる。

こういった直接的な被害も甚大だが、

踏み台的に犯罪に利用される、

というのもかなり大きな被害だ。

場合によっては人生終わりかねない。

パスワードがばれてアカウントが

乗っ取られてしまった場合、

自分のアカウントで不正行為が行われている以上、

それをやったのは自分ではない、

と証明するのはなかなか大変だと思う。

ということで、パスワード管理は

きっちりしておかないと、

場合によっては甚大な被害になりかねない、

という所は今一度認識を新たにしたほうがよさそうだ。



対策

では、対策はいったい

どうすればいいのだろうか?

一般的に言われているのは、

英数、記号を含めた 8 文字以上

のパスワードを設定する、

というのが多いと思われる。

まぁ、要するに、これまで述べてきたような、

・簡単に推測されるようなパスワードは使うな

という話である。

これ自体は別に間違っちゃいないのだが、

そのための手法として、

・a -> @, o -> 0 みたいな記号への置き換え

みたいなことは、あまり意味がない。

ベースとなるパスワードが短かったり、

簡単に推測できるようなものであれば、

それから上述のような置き換えしたものを

別のパスワード候補として推測されてしまうからだ。

また、何文字以上は文字や数字を連続させない、も

正直あんまり意味がないどころか、

逆にその制約によってパスワードを作りにくくなり、

一回作ったものを使いまわしてしまうとか、

一部を変えたものを使いまわすとか、

結局脆弱な運用になってしまうと思われる。

システム的にこういう運用を強制させるサービスは

本当に勘弁してほしいと思う。

じゃぁどうすればいいか、となると、

パスワードではなくパスフレーズを

許容すればいいだけだと思うのだが。

結局、辞書攻撃でも総当たりでも、

長さが長いほうが一番当たりにくいのである。

なので、例えばだが、

kono_saitono_pasuwa-doha_naisho

なんてものをパスフレーズとして利用するだけでも、

多分相当強度は上がると思われる。

これだけで 31 文字並べただけ。

ランダムな 31 文字を覚えるのは、

正直かなり苦痛だが、こういった

意味のある文章であれば、意外と覚えられる。

しかも、長さがある分、辞書などでも

当たりにくくすることができる。

ということで、パスワードとして

任意の長さを設定できるサイトなどでは、

なるべく長い、パスフレーズ

を登録するのがよいのではないかと思っている。

では、定期的な更新に関してはどうだろうか?

こちら、これほどパスワードが露呈している以上、

定期的なパスワードはやっておいたほうがよいだろう。

ただ、どんなサイトでも頻繁に変更を

求められてしまうと、

どのサイトでどんなパスフレーズだったかを

忘れてしまうので、やっぱり使いまわしがちになる。

ということを考えると、定期的に更新はしたほうがいいが、

露呈することが判明するまでは使い続ける、

ということもありかもしれない。

自分が使っているサイトから連絡があるとか、

これまで記載したような記事で

パスワード漏洩が疑われるような状況になれば、

その時に変更する、というのがよいのかもしれない。



まとめ

ということで、相も変わらず

稚拙な文章となってしまって恐縮だが、

結局のところ、

・パスワードは露呈や推測されうることを認識すること
・パスワード管理にはもっと注意を払ったほうがよいこと
・パスワードにはなるべく長いものを使うこと
・漏洩情報に気を配り、いつでも変えれるようにすること

ということが重要だと思う。

また、不要なサービスやアカウントは

今一度見直して削除するなど、

パスワードやアカウントをちゃんと管理する

ということも非常に重要となる。

自戒の意味を込めて、

パスワードについて今一度見直したほうがよい

と思ったので、この記事を書いてみた。

少しでも役に立てばよいのだが。




Copyright (c) 2017 Webmaster of this site All Rights Reserved.
カテゴリー: ブログ | コメントする

無駄なものを作る記事から得た教訓


■無駄なものを作る記事から得た教訓

本日は、

平成 31 年度春期情報処理安全確保支援士試験日

だ。

平成最後の

情報処理安全確保支援士試験

となる記念すべき日。

受験者各位には、これまでの勉強の成果を

いかんなく発揮していただき、

是非とも合格していただきたいものである。

しかし、今回が平成最後ということを考えると、

次回は

令和最初の情報処理安全確保支援士試験

となる。

第一回(平成 29 年春期)情報処理安全確保支援士試験

の合格者である私としては、

令和最初の試験合格者

を目指すべきか!?とも思ったが、

面倒くさい。やめておこう。

で、そんな面倒くさがりの私だが、

最近はそのぐうたらぶりが

趣味の部分にも影響しだしている。

何をするにも、面倒くさくなってきているのだ。

昨年後半から取り組んできたことが、

何とか成功裏に終わったため、

いよいよ電子工作やセキュリティに

再度本腰をいれようとおもっているのだが、

どうもやる気が起きないのだ。



元々は

・セキュリティの勉強をしたい!

と思って raspberry pi を使った疑似攻撃環境を作り、

なるほど、こんなことができるのか!とか、

こうやって攻撃はされるのか!とか、

色々勉強できてきた。

そうこうしているうちに、

これだと普通の PC でできるよねー、

折角ラズパイには GPIO がついてるんだから、

なんか電子工作的なことしたいよねー

ということで、

ラズパイで電子工作

として、いろんなものを作ってきた。

もちろん、素人の趣味の域を出るものではないが、

最終的にはここまで行きたい!と思っていた、

ラジコン戦車まで作ることができた。

Raspberry Pi でブラウザから操作できるラジコン戦車を作る!

これ以降、電子工作には取り組めていない。

セキュリティの方に戻ろうとして、

現在 Vuls の挙動を確認しようとしているが、

これも結構インストールが面倒っぽくって、

なかなか進んでいない。

また、やっぱり動くものを作りたい、という

思いもあって、何か作ろうと思っているのだが、

何を作ればいいのか、さっぱり思いつかない。

どうせ作るなら、何か意味のあるものを、と

ついつい思ってしまうのだが、

何か意味がある動くもの、

が自分にとって何なのか、が思いつかず、

なんだかどんどん面倒になってきている。



そんな中、何かネタないかなーと思いつつ、

いつも記事ネタを提供してくださっている、

fabcross

さんのページを見ていたら、こんな記事を見つけた。

全力で肯定してくれる女の子マシーンを作って救われた

元々、この、

頭の悪いメカ by 藤原麻里菜

というシリーズは、ほかの記事を見た際に

目には入っていたものの、

つまんねーものつくってもなー、

と思ってあまり注目していなかった。

が、今回はタイトルがよかったのか、

なぜか読む気になって、ちょっと読んでみた。

面白いじゃないか…。

うなずきマシーンを作る、

ぐらいなら、まぁ、

新人記者のフレッシュ感満載記事

かなーとも思えなくはないのだが、

これを作ろうとした発端がまず病んでいる(笑)。

病んでいるが、すごく共感できる。

そんな私も病んでいる(笑)。

しかもやっていることは超くだらない。

が、電子工作としてはそこまで複雑な

ことはしていないので、私レベルでも

できそうと思えるレベル。

このレベル感も私にはちょうどよい。

残念ながら、使っているマイコンは

ラズベリーパイではなく Arduino だが、

まぁラズパイでもできなくはない。

ただ、LED を付ける、ボタンを押して反応させる、

モーターを動かす、等、初心者レベルで

できることを組み合わせて、面白いことをやっている。

その結果、全く役には立たないが、

筆者の文章力も加わって、読み物として

とても面白いと感じた。

ということで、気になってシリーズを見てみたが、

やっぱり、

『この人、頭おかしい…(いい意味で)』

という感想を抱くに至った。

クソリプに塩をまく!?

人工的にイヤホンケーブルを絡ませる!?

自撮りの魅力を半減させるマシーンを美女に普及させる!?

あほだ…。

発想がいってしまっている…。

が、発想、やっていることのくだらなさは

私には到底出せない、素晴らしいものだとまじめに思っている。

そしてまた、それを超絶まじめにやっている。

さらにはそんなに難しすぎることではないので、

趣味のレベルとしてはすごく参考になる。

で、ご本人の病みっぷりもあってか、

記事がまた面白い。

いやぁ、若いのに大したものだと

本気で感心した。



ということで、シリーズを

いろいろ読んでいたのだが、

この面倒くさがりの私が

今一度挑戦しようかと思わせてくれたのが、

この記事。

スマートにフリスクが出せる「フリスク銃」を作ってみた

ま、フリスクはちゃんととんでない。

が、腕に着けるとか真鍮でかっこよくするとか、

でも結果重くて後悔しだすとか、

まぁとても素晴らしい内容なのだが、

私も元々、ラジコン戦車に BB 弾を

飛ばす機能をつけたいと考えていた。

その際、エアガンとかいろいろ考えてみたが、

子供向けに遊びでつけたいだけなので

あまり本気のけがをするようなものもならず、

だとすると、ピッチングマシーンのように、

タイヤで BB 弾を挟んでとばすというのは

どうだろうかと考えていた。

で、この記事では同じようなことをやっている。

とび方も、多分この程度なのだ。

だとするとそんなに危なくはない。

そして、こんなに若い子ができているのだ。

私にできないはずはない、と思えてきた。

さらに言えば、

そんなのつけてもなぁ、

という気になっていたのだが、

この記事から、

こんなにくだらないことをやってもいいんだ!

みたいな変な勇気をもらった。

ちょっとやってみたくなってしまった。



直近はまず Vuls を何とかしたいが、

ラジコン戦車の配線を何とかしたいというのもあるし、

折角はんだを買ったのだから、

もうちょっと使いたいし、

なんなら Raspberry Pi Zero W も使いたいし。

やっぱり、

Raspberry Pi Zero W でラジコン戦車を作り直す!

というのをやってみようかな。

もっと見た目にもこだわって、

なんならガンタンクとかにしてみて、

BB 弾も飛ばせるようにしてみたい。

そういや、R2-D2 も作りたかったんだよなー。

そうやって、見た目動くもので

テンションが上がるものをまず作ったうえで、

自分の勉強にもなる、

・セキュリティ
・機械学習

なんかを組み込んでいく、とかにすると、

もっと進めていこうと思えるのかもしれない。

やばい、また妄想だけテンションが上がってきた。

もう一度、心機一転、作りたいものを考えてみよう。

まずは戦車の作り直し+BB 弾かなぁ。

英語も勉強も頑張らねばならないが、

趣味の時間は大切にしていこう。

とはいえその前に、

まずは作業環境を作るためにも、

自分の机、かたづけないとなぁ。




Copyright (c) 2017 Webmaster of this site All Rights Reserved.
カテゴリー: ブログ, ラズパイで電子工作 | コメントする

早くも脆弱性発覚 – WPA3 –


■早くも脆弱性発覚 – WPA3 –

WiFi 通信を保護するためには、

一般利用者の場合、

WPA2

を利用するのがよいとされてきた。

が、KRACKs という WPA2 に対する

攻撃法が提案され、実際に攻撃コードも

公開されたため、Wi-Fi Alliance は

新たなセキュリティ規格である、

WPA3

というのを公開していた。

これに関しては、本サイトにおいても、

WiFi の新たなセキュリティ規格 WPA3 登場

として記載した。

これに関して、公開から一年足らずで、

WPA3 に対する攻撃法

が公開されたとのこと。

Wi-Fiセキュリティ新規格「WPA3」に影響を及ぼす脆弱性群「Dragonblood」

攻撃の種類としては、

・DoS 攻撃を引き起こすものが 1 件
・ダウングレードを発生させるものが 2 件
・情報漏洩につながるものが 2 件

ということらしい.

情報漏洩の方は、サイドチャネルを利用、

ということらしいから、そんなに

簡単にできるものではないかもしれない。

となると、結局、下位互換性を確保するための

仕組みを利用し、ダウングレードさせて

既存の KRACKs 等で攻撃する、が

主たる攻撃手法になりそうだ。

まぁいずれにせよ、ソフトウェアアップデートで

対応可能、ということなので、

WPA3 を使っている方は、

早急にアップデートをするほうがよい。



で、アップデートをするに越したことはないが、

結局のところ、WPA3 といえど、

所詮は

Client – Wi-Fi AP 間

を保護するだけのものだ、

ということを今一度認識したほうがよいだろう。

通常はその後インターネットに

データが出ていくわけだが、

その部分は別途 https 等で

保護されていない限り、

何の保護もない。

なので、WPA2 であろうと WPA3 であろうと、

端から端までを保護しているわけではない、

という場合が多いことは、

今一度強く認識しておくべきだと思う。

WPA3 でアップデートしたから、

すべての通信が安全というわけではない、

ということを、利用者としても

頭に入れておいたほうがよい。

技術的には面白そうなので、

もう少し詳細は追ってみようと思うが、

通信路上の保護という観点では、

あくまで end-to-end で

保護されているかどうか、を

確認しておくべきだと改めて認識した、

今日この頃であった。




Copyright (c) 2017 Webmaster of this site All Rights Reserved.
カテゴリー: ブログ | コメントする

2019 年春期情報処理安全確保支援士登録者数


■2019 年春期情報処理安全確保支援士登録者数

4 月 1 日時点で、IPA から、

2019 年度情報処理安全確保支援士登録者数

に関する発表があった模様。

国家資格「情報処理安全確保支援士(登録セキスペ)」2019年4月1日付登録人数は1,052人

2018 年度秋期の登録者数が発表された際には、

いよいよ正念場か!? – 情報処理安全確保支援士 –

において、大体 800 人前後ではないかと予想。

しかしながら今回の発表を見る限りでは、

1000 人程度が登録している。

想定よりは多かった。

上述の IPA のサイトにおける

「情報処理安全確保支援士試験合格者の登録状況」

の表を見る限り、

2018 年度の試験合格者による登録が

まだ微妙に続いていることが要因のようだ。

数%とはいえ、試験合格から一年以上経って

登録する人がいるということだ。

会社から費用負担してもらえたとか、

仕事上必要になった、メリットを感じられた、

ということであれば、よいことだと思う。



とはいえ、このペースであれば、

2016 年に内閣サイバーセキュリティセンターが掲げた、

2020 年までに情報処理安全確保支援士有資格者 3 万人

というのにはどう考えたって 1 万人程度足りない。

サイバーセキュリティ人材育成総合強化方針

まぁ、すでに分かり切ったことではあったが…。

何度も繰り返しの記載で恐縮だが、

既に

・維持費の高さ
・メリットの不明確さ

が一番の障害になっていることが

わかり切っているにも関わらず、

ここに何の手も打たないのだから、

達成できなくっても何の問題もない、と

認識しているんだろうなぁ。

まぁ、数の妥当性も、結局のところ

適当ではあるのだろうから、

3 万人に至っていないこと自体は

問題ではないように思える。

が、達成しようとしない、という姿勢は

正直いかがなものかとは思う。

ここでぐちぐち書いていてもしょうがないけど。



ただ、達成できなくってもいいと

割り切っているかと思えば、

どうもそうでもなさそうに思える点が気になる。

例えば、これまでは、

今回何人登録しました、

というのを IPA のプレス発表として

公表してきている。

そのせいもあって、各種セキュリティを取り扱う

ニュースサイトなどでも公開され、

私などもそういったサイトの情報をベースに

気づくことができていた。

が、今回はなかなか見つからなかったのである。

いつも通りの調べ方をしても、

4 月の登録者数がどれぐらいだったのか?

という情報が、なかなか出てこなかった。

おかしいなぁ?と思いながら、

暇を見つけて IPA のページにも行ってみたが、

プレスリリースには載っていない。

致し方なく、いろいろ調べてみた結果、

今回は

HOME > 国家資格「情報処理安全確保支援士」制度 > 登録者情報、活用インタビュー、資料ダウンロードなど

という所に新着情報としてあった…。

今までプレス発表していたものを、

なぜ急にこんなところに置きだしたのか?

多分恐らく、旧制度の移行期間も終わったことだし、

プレス発表するほどでもないか、とかになって、

置き場所を変えたのだとは思う。

が、本当はもう数が少なくなってきたから、

それをつつかれるのが嫌だから、

見つかりにくい所にこっそり移動したんじゃないの!?

と邪推してしまうのは、

私の心が歪んでいるからだけだろうか…。

まぁ真実はわからないので

なんともいえないが、この制度、

本当になんとかならんものかなぁ

とは思う。

試験の内容自体は自分自身としても

勉強するに値するものだったし、

まぁ資格を取ったからといって

即ち実践できるかと言われれば no だ。

が、内容はかなり実践的になってきているし、

実践者になるきっかけとしても

よいものだとは思っている。

でも制度としてはやっぱり金額がネック過ぎて、

残念だとしか言いようがない。

今後改善の見込みはもうないと思うが、

奇跡的に改善してくれないものかと

淡い期待を抱き続けている…。




Copyright (c) 2017 Webmaster of this site All Rights Reserved.
カテゴリー: ブログ, 情報処理安全確保支援士 | コメントする

サイト開設からの軌跡(一年十ヶ月経過)


■サイト開設からの軌跡(一年十ヶ月経過)

サイト開設から二十二ヶ月。

今月も、素人がサイト開設したらどうなるか、の記録として、

PV 数などを残しておこうと思う。

  1. PV 数の推移
  2. 読まれている内容
  3. 今後の予定
  4. 所感

PV 数の推移

この二十二ヵ月における Page View 数、訪問者数、および記事数の推移は以下の通り。

経過月数 年月 月間 PV 数 一日平均 PV 数 訪問者数 記事数
1 2017/06 23 1 17 15
2 2017/07 124 4 46 20
3 2017/08 228 7 74 20
4 2017/09 533 17 250 8
5 2017/10 1280 41 599 8
6 2017/11 1690 56 854 16
7 2017/12 2546 82 1355 22
8 2018/01 4107 132 2015 17
9 2018/02 4673 166 2322 14
10 2018/03 4928 159 2557 14
11 2018/04 4822 161 2444 6
12 2018/05 6947 224 2982 7
13 2018/06 6911 230 3430 7
14 2018/07 9540 308 4755 5
15 2018/08 8801 284 4328 7
16 2018/09 8648 288 4146 6
17 2018/10 13262 428 6373 4
18 2018/11 12006 400 5749 4
19 2018/12 10829 349 5045 6
20 2019/01 14256 460 6416 4
21 2019/02 13516 482 6708 4
22 2019/03 11793 380 6171 6

記事、書けてないなぁ…。

とりあえず、これまで取り組んできたことが、

なんとか成功裏に終わった。

長年のどに刺さっていた小骨が

ようやく取れたような感じ。

他にもやらないといけないことはあるが、

今月以降、記事作成にもう少し時間が掛けられそう。

そして先月、PV 数、一日平均共に激減。

なんでだろうなぁ。

まぁ最近まとめ記事的なものは

前々かけていないので、

それが理由なのかもしれない。

まぁ、あまり気に病まずに

自分にとっても、見る人にとっても

有意義なものを書いていければと思う。



読まれている内容

先月の PV 数 Top 3 のうち、上位三記事は、

専用カメラモジュールを使う
いよいよ正念場か!? – 情報処理安全確保支援士 –
動いたぞ! DC モーター! – Raspberry Pi でラジコン戦車 –

となり、先々月と比べても不変。

ただ、すべて月単位でみたときに、

100 PV 程度減少している。

このあたりはどうしようもないので、

新たな記事を作成してあげていくしかないか。

一方、主力になってほしいと常に期待している

Raspberry Pi でブラウザから操作できるラジコン戦車を作る!

シリーズは、

Raspberry Pi でブラウザから操作できるラジコン戦車を作る! – WebIOPi から DC モーターを制御する –

が、五位にランクインし、Top 10 に返り咲き。

あと、先々月 Top10 入りした、

ラズパイでセキュリティ

は先月六位。

ある程度維持できている模様。

安定的に伸びて行ってほしい。

今後の予定

毎回代わり映えしないが、進捗確認の意味も込めて。

■Blog
・セキュリティ+ラズパイ関連ニュース(継続)

■セキュリティ
・脆弱性検査ツールの使い方と比較(未)
今月こそやる。
とりあえず Vuls を入れてみるかな。

・CTF 関連(未)
そろそろ本の選定にはいろうかなぁ。

・Bug Bounty Program(未)
こちらで稼げるようになりたいぞ。

■linux
・HTTPS/FTPS 化(未)
・SSH 公開鍵設定(未)
まぁこれはどこ見てもあるからいいかなぁ…。
やられ環境を安全化する際に検討してみよう。

■電子工作
・UART 設定(未)
一応残しているが…。

・OpenCV の利用(未)
ペンディング継続。

・機械学習(未)
次のシリーズ化最有力候補として考えている。
そろそろまじめに書籍かおうかな。

・家庭用セキュリティ機器の作成(未)
他の勉強を進めながら、はちょっと厳しいので、
もうちょっと構想固めてからかな。
時間はかかりそうなので、
じっくり取り組もうと思う。



所感

3 月は 2 月より日数が多いにもかかわらず、

月間 PV 数が 2,000 も落ちた。

一日平均 PV 数でも 100 PV ほど落ちている。

大幅減も甚だしい。

最近は大体 3 ヶ月毎に、

・ぐっと伸びる
・ちょっと下がる
・さらに下がる

というサイクルになっているので、

今月はぐっと伸びるとなることを

期待したい。

とはいえ、

・自身の勉強+見る人の参考になれば

が主テーマのサイトなので、

勉強ネタを増やして自分自身の成長につなげたい。

後、今年の大きな目標として挙げていた、

・英語(英会話)をちゃんと勉強する
・機械学習に取り組み始める
・Python をある程度習得する
・バグバウンティで稼げるレベルになる

については、英語にちょっと取り組み始めたぐらい。

機械学習か CTF か、どっちから行こうかなぁ。

CTF かなぁ…。




Copyright (c) 2017 Webmaster of this site All Rights Reserved.
カテゴリー: ブログ | コメントする

Raspberry Pi よりも簡単!? – 新たな電子工作キット obniz –


■Raspberry Pi よりも簡単!? – 新たな電子工作キット obniz –

どうやら、ラズパイよりも簡単に

電子工作できる、

obnize

というキットがあるらしい。

ラズベリーパイより簡単にIoT電子工作ができる「obniz」が1億円を調達、コンセプトは“ハードウェアのAPI化”

実際のものはこちら。

Amazon

obniz (オブナイズ) – クラウドにつながったEaaS開発ボード – クラウドの永久ライセンス付き

楽天

スイッチサイエンス obniz (オブナイズ)

値段も本体だけだと 6,000 円ぐらいで、

ラズベリーパイよりもちょっと高い程度。

SDK を使えば、JavaScript で

サーボモーターや DC モーターを

簡単に操作できるらしい。

うーん、まじめに raspberry pi より簡単かも。

しかも、初期状態でクラウドに

つながっているようで、

リモートからの操作も

簡単にできるようになっている模様。

私がこれまでやってきた

raspberry pi を使った電子工作

では、ローカルネットワーク内での

リモート操作は実現していたが、

インターネット経由の操作は

少し障壁が高いこともあり、

手を出してこなかった。

しかしながら、こちらでは

初期状態でそれが実現できるようである。

うーん、簡単だしやりたいことできるし、

電子工作に初めて取り組む

という人にとっては

障壁が下がってとってもよいのではないか。

しかも、すでに具体的なアプリケーションを

実現できるスターターキットが

二種類ぐらい販売されているらしい。

まずはこれで実際に試してみて、

その後は自分で好きなようにいじる、

というのができる模様。

やっぱりかなり障壁は低いように思う。

具体的には、以下のような

スターターキットが存在するようだ。



一つ目のスターターキットがこちら。

IoT Home Kit

これだと、

1. 外出先からエアコンや照明をコントロール
2. テレビやエアコンのタイマー起動設定
3. 距離センサによる人感センサーの実現
4. 天気予報 API を使った天気との連動

などができるらしい。

1 などはインターネット越しに

室内にある obniz を操作できることを

あらわしており、かなり簡単にできる模様。

2 なんかは個人的に欲しい機能だったりする。

しかも、これらの機能を一通り実現したら、
*実際にはしなくとも

自分でカスタマイズした処理を実現できる、

ということだから、

外出先からデバイスを操作する

というのが raspberry pi よりも簡単に

実現できる、ということでよいかと思う。

実際のものはこちら。

Amazon

obniz スターターキット/IoT Home Kit – スマホでもプログラム。自宅を自分の手でIoT化

楽天

スイッチサイエンス obniz IoTホームキット

値段も 12,000 円前後であり、

ラズパイがスターターキットレベルだと

大体 10,000 円ぐらいはすること、

obniz のスターターキットには

モーターを含めて必要なものが

すべてそろっていること、を考えると、

それほど高くはない。

うーん、これ結構いいなぁ。



さらに、二つ目のスターターキットはこちら。

AI Robot Kit

こちらは、

・ラジコン(遠隔操作)
・文字認識
・ライントレース
・顔認識
・外部連携(スマートスピーカーとの連携)
・障害物回避

などができるらしい。

車体が段ボールという所が

かなりチープな印象を与えるが、

本サイトでも作成した、

Raspberry Pi でブラウザから操作できるラジコン戦車を作る!

以上のことができるらしい。

どうも、カメラはスマホを使う模様。

まぁそういう考え方もあるよねぇ。

ちなみに実際のものはこちら。

Amazon

obniz スターターキット/AI Robot Kit – スマホでもプログラム。最新AIでロボットを動かす

楽天

スイッチサイエンス obniz AIロボットキット

正直いうと、意外と悪くない、と思う。

うーん、結構すごいなぁ…。

ちなみに、はんだ付けして

自分で機能を拡張する、

ということも考えられているらしく、

プロトタイプ基板もある模様。


Obniz プロトタイプ基板 + 中継基板 5mm

初めて電子工作に取り組む人にとっては

とっても障壁が低いのは確かだと思う。

加えて、自分で工夫できる余地もありそう。

結構いいんじゃないかと思っている。



ということで、今回は新たな電子工作キットとして、

obniz

というのを紹介してみた。

実際に使っていないので何とも言えないが、

ラズパイでいろいろ遊んできた自分としては、

・これ、かなり簡単に遊べそうじゃない!

という感じを持っている。

ラズベリーパイで同じことを実現しようとすると、

やっぱりそれなりに Linux の知識とかが

必要になってくる。

が、こちらはプログラミングの知識すら

あまりなくても簡単に実現できそうである。

ということで、

・電子工作に挑戦してみたいが、難しそう…
・あんまり知識はないが、IoT デバイスを作ってみたい!

という人には、値段を含めてうってつけではないだろうか。

私自身、ちょっと魅力的に感じている。

私の場合は、こういうものを作ることを通じて、

自分自身の学習につなげたい、

ということがある。

そのため、単純に動けばよい、というよりも、

ある程度原理を理解したり、

プログラミングをやったりして

知識を獲得しながら動かしたいと考えている。

なので、すぐにこれに飛びつくつもりは

今のところないのだが、

興味深いのは間違いない。

今後は、このキットと同じようなことができる、

Raspberry Pi キット

などを自作していってみたい、と思えた。

しかし、本当に興味深いデバイスであり、

こういうのがもっとどんどん出てくるとよいなぁ、

と思う今日この頃である。




Copyright (c) 2017 Webmaster of this site All Rights Reserved.
カテゴリー: ブログ, ラズパイで電子工作 | コメントする