[sisyphus] В установочном скрипте пакета freenx-server захардкожен ключ SSH
Stas
stas.grumbler на gmail.com
Вс Мар 27 20:14:18 MSK 2016
Приветствую!
Устанавливаю сервер freenx и обнаружил весёлую "дыру".
После установки мануал рекомендует выполнить /etc/init.d/freenx-server
install.
В результате выполняется скрипт /usr/bin/nxsetup с параметром --install.
Внутри /usr/bin/nxsetup в функции parse_cmdline(), начиная со строки 126
есть код:
============================================================
if [ "$INSTALL" = "yes" -a "$AUTOMATIC" = "no" -a
"$SETUP_NOMACHINE_KEY" = "no" ]
then
echo "------> It is recommended that you use the
NoMachine key for"
echo " easier setup. If you answer \"y\", FreeNX
creates a custom"
echo " KeyPair and expects you to setup your
clients manually. "
echo " \"N\" is default and uses the NoMachine
key for installation."
echo ""
echo -n " Do you want to use your own custom KeyPair?
[y/N] "
read -n 1 CHOICE
[ "$CHOICE" = "y" ] || SETUP_NOMACHINE_KEY="yes"
fi
============================================================
То есть скрипт рекомендует использовать некий "NoMachine key".
Смотрим, что это за ключ такой и видим его в функции install_nx()
(цитирую, начиная со строки 196):
============================================================
mkdir -p $NX_HOME_DIR/.ssh
chmod 700 $NX_HOME_DIR/ $NX_HOME_DIR/.ssh
if [ ! -f $NX_HOME_DIR/.ssh/$SSH_AUTHORIZED_KEYS -o
"$SETUP_NOMACHINE_KEY" = "yes" ]
then
SETUP_NX_KEY="yes"
if [ "$SETUP_NOMACHINE_KEY" = "yes" ]
then
cat << EOF >$NX_HOME_DIR/.ssh/$SSH_AUTHORIZED_KEYS
no-port-forwarding,no-agent-forwarding,command="$PATH_BIN/nxserver"
ssh-dss
AAAAB3NzaC1kc3MAAACBAJe/0DNBePG9dYLWq7cJ0SqyRf1iiZN/IbzrmBvgPTZnBa5FT/0Lcj39sRYt1paAlhchwUmwwIiSZaON5JnJOZ6jKkjWIuJ9MdTGfdvtY1aLwDMpxUVoGwEaKWOyin02IPWYSkDQb6cceuG9NfPulS9iuytdx0zIzqvGqfvudtufAAAAFQCwosRXR2QA8OSgFWSO6+kGrRJKiwAAAIEAjgvVNAYWSrnFD+cghyJbyx60AAjKtxZ0r/Pn9k94Qt2rvQoMnGgt/zU0v/y4hzg+g3JNEmO1PdHh/wDPVOxlZ6Hb5F4IQnENaAZ9uTZiFGqhBO1c8Wwjiq/MFZy3jZaidarLJvVs8EeT4mZcWxwm7nIVD4lRU2wQ2lj4aTPcepMAAACANlgcCuA4wrC+3Cic9CFkqiwO/Rn1vk8dvGuEQqFJ6f6LVfPfRTfaQU7TGVLk2CzY4dasrwxJ1f6FsT8DHTNGnxELPKRuLstGrFY/PR7KeafeFZDf+fJ3mbX5nxrld3wi5titTnX+8s4IKv29HJguPvOK/SI7cjzA+SqNfD7qEo8=
root на nettuno
EOF
chmod 600 $NX_HOME_DIR/.ssh/$SSH_AUTHORIZED_KEYS
cat << EOF >$NX_HOME_DIR/.ssh/client.id_dsa.key
-----BEGIN DSA PRIVATE KEY-----
MIIBuwIBAAKBgQCXv9AzQXjxvXWC1qu3CdEqskX9YomTfyG865gb4D02ZwWuRU/9
C3I9/bEWLdaWgJYXIcFJsMCIkmWjjeSZyTmeoypI1iLifTHUxn3b7WNWi8AzKcVF
aBsBGiljsop9NiD1mEpA0G+nHHrhvTXz7pUvYrsrXcdMyM6rxqn77nbbnwIVALCi
xFdHZADw5KAVZI7r6QatEkqLAoGBAI4L1TQGFkq5xQ/nIIciW8setAAIyrcWdK/z
5/ZPeELdq70KDJxoLf81NL/8uIc4PoNyTRJjtT3R4f8Az1TsZWeh2+ReCEJxDWgG
fbk2YhRqoQTtXPFsI4qvzBWct42WonWqyyb1bPBHk+JmXFscJu5yFQ+JUVNsENpY
+Gkz3HqTAoGANlgcCuA4wrC+3Cic9CFkqiwO/Rn1vk8dvGuEQqFJ6f6LVfPfRTfa
QU7TGVLk2CzY4dasrwxJ1f6FsT8DHTNGnxELPKRuLstGrFY/PR7KeafeFZDf+fJ3
mbX5nxrld3wi5titTnX+8s4IKv29HJguPvOK/SI7cjzA+SqNfD7qEo8CFDIm1xRf
8xAPsSKs6yZ6j1FNklfu
-----END DSA PRIVATE KEY-----
EOF
chmod 600 $NX_HOME_DIR/.ssh/client.id_dsa.key
else
# generate a new key, backup the old and copy
it to $SSH_AUTHORIZED_KEYS
$PATH_BIN/nxkeygen
fi
fi
============================================================
IMHO это серьёзный баг и нужно исключить использование такого ключа.
--
Станислав Дёгтев
Служба "Ваш админ"
Мои контакты:
- jabber: grumbler на grumbler.org
- email: stas.grumbler на gmail.com и stas на vashadmin.su
- телефоны в Е-бурге +79045430461 и +79222112259
Подробная информация о списке рассылки Sisyphus