WEBrick, yang merupakan bagian dari library resmi dari Ruby, telah ditemukan celah keamanan, yaitu memungkinkan attacker melakukan malicious escape sequences injection ke file log WEBrick. Dengan begitu, hal ini memungkinkan karakter kontrol yang berbahaya dieksekusi pada terminal emulator korban.

Berikut contoh memunculkan bug ini.

% xterm -e ruby -rwebrick -e 'WEBrick::HTTPServer.new(:Port=>8080).start' &
% wget http://localhost:8080/%1b%5d%32%3b%6f%77%6e%65%64%07%0a

Versi-versi Ruby yang memiliki celah keamanan ini:

  • Ruby 1.8.6 patchlevel 383 dan versi-versi sebelumnya
  • Ruby 1.8.7 patchlevel 248 dan versi-versi sebelumnya
  • Versi development dari Ruby 1.8 (1.8.8dev)
  • Ruby 1.9.1 patchlevel 376 dan versi-versi sebelumnya
  • Versi development dari Ruby 1.9 (1.9.2dev)

Solusi

Gunakan versi ruby berikut untuk mengatasi bug ini.

Untuk Ruby 1.8.7, Update ke 1.8.7 pl. 249.

Untuk Ruby 1.9.1, update ke 1.9.1 pl. 378.

Untuk Ruby 1.8.6, update ke 1.8.6 pl. 388.