てきとうなメモ

本の感想とか技術メモとか

lessの脆弱性

lessはLESSOPENとLESSCLOSEで前処理、後処理を行うことでいろいろな種類のファイルを表示することができる。最近のLinuxディストリビューションは前処理/後処理スクリプトを用意してくれていて、LESSOPEN/LESSCLOSEでそれを使うように設定している。

このスクリプトは通常、拡張子でファイルの種類を判定して、それぞれ適切なコマンドを選んで実行してくれる。しかし、拡張子しか見ていないのでコマンドが想定していないフォーマットのファイルを開いてしまう危険性があるよという話。

ubuntu14.04のこのスクリプト(/usr/bin/lesspipe)をみると結構いろんなファイルを開けるようになっているので確かにちょっと恐いかも。

圧縮ファイルだけでなくisoファイルはisoinfoでディレクトリ表示し、pdfやdocはpdftotextやcatdocでテキスト抽出し、jpg等画像ファイルはidentifyでサイズ情報を表示するという仕組みになっている。