1. TOPTOP
  2. Webサービス
  3. Linux

GNU wgetのセキュリティ脆弱性への対応。バージョンを1.12から1.16にアップデートしたときの手順

|

linux

先日、Japan Vulnerability Notesで、GNU Wget にシンボリックリンクの扱いに関する問題(新しいタブで開く)が掲載されていました。他のサイトでも取りざたされてますね。

対策は、wgetのバージョンを1.16にすることです。今まで自分が使っていたバージョンは1.12だったので、バージョンアップにチャレンジしてみました(Linux環境はCentOS6.5)。

この方法が正しいかどうかは分かりませんが、このページを見ていただいた方の、何かの参考になれば幸いです。

wgetのバージョンアップと確認

先に結論をまとめておきます。バージョンアップとその確認のためのコマンドです。

wgetのバージョンアップ

$sudo wget http://ftp.gnu.org/gnu/wget/wget-1.16.tar.gz 
$sudo tar zxfv wget-1.16.tar.gz
$cd wget-1.16
$sudo chmod +x ./configure
$sudo yum install gnutls gnutls-devel
$sudo ./configure
$sudo make
$sudo make install

バージョンアップの確認

$cd /usr/local/bin
$ls
wget
$wget --version
GNU Wget 1.16 built on linux-gnu.

参考サイトとコマンドの解説

各コマンドに関する解説と参考したサイトを紹介していきます。

$sudo wget http://ftp.gnu.org/gnu/wget/wget-1.16.tar.gz

wgetの使い方について。

$sudo zxfv wget-1.16.tar.gz

拡張子.tarのファイルを書庫化・展開します。

$wget-1.16

カレントディレクトリをwget-1.16にします。

$sudo chmod +x ./configure

wget1.16_1

そのまま./configureにすると、Permission deniedと表示されるので、./configureに関する権限を変更します。

$sudo yum install gnutls gnutls-devel

wget1.16_2

configure: error: --with-ssl=gnutls was given, but GNUTLS is not available.

./configureの権限を変更してもエラーが出るので、gnutls-develをインストールします。

$sudo ./configure

wget1.16_3

./configureが完了すると、結果表示の最後に上記のような画面が出ます。

$sudo make

configureで作成されたMakefileを基にしてソースコードをコンパイルします。

$sudo make

makeで生成されたバイナリファイルなどを規定のディレクトリにコピー(インストール)を行います。

$wget –version

wget1.16_4

カレントディレクトリを/usr/local/binにした上でバージョン確認すると、バージョンが1.16にアップされていることが分かります。

〔参考サイト〕