LoginSignup
6
7

More than 5 years have passed since last update.

vncserverの暗号化パスワードは解析できるから注意

Last updated at Posted at 2016-07-31

参考

パスワード値の確認(Linux)

バイナリ確認コマンド
xxd ~/.vnc/passwd
hexdump ~/.vnc/passwd
hd ~/.vnc/passwd
vimで開いてxxdに食わせる場合
vim ~/.vnc/passwd
:%!xxd
  • ubuntu16.04のtightvncserverのパスワードが解析できることを確認した。

パスワード値の確認(windows)

  • RealVNC

    • HKEY_LOCAL_MACHINE\SOFTWARE\RealVNC\vncserver\Password
  • TightVNC

    • HKEY_CURRENT_USER\Software\TightVNC\Server\Password
  • TigerVNC

    • HKEY_LOCAL_USER\Software\TigerVNC\WinVNC4\Password
  • UltraVNC

    • C:\Program Files\UltraVNC\ultravnc.ini
    • Value: passwd or passwd2

解析

セキュリティ向上案

vncserverのパスワードは最長8文字。
どうしてもポート開放したい場合、以下が考えられる

  1. 通信ポートの変更。5900〜5909あたりは避ける
  2. xrdpを使う (user + passの認証となる)
  3. sshトンネリング (VPNもあり)
  4. ファイアウォールで接続元IP制限
  5. noVNC + nginxでDigest(Basic)認証をかける
  6. noVNC + nginx + 自己署名型証明書での制限
  7. vinoを使ってTLS非対応のクライアントからの接続を防ぐ
  8. RealVNCはPAM対応
  9. vncserverを起動させっぱなしにしない
vnc60min.sh
pgrep Xtightvnc
if [ $? -eq 0 ];then
    echo "vncserverがすでに起動しています。"
    exit 0
fi

vncserver -geometry 1200x900 -depth 15 :1
echo "waiting 60 min"
sleep 3600
vncserver -kill :1

合わせて読みたい

6
7
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
7