Как отключить режим только для чтения в подсистеме sftp-server OpenSSH

Наша совместимая с PCI система CentOS 7 была недавно помечена Trustwave как FAILED из-за уязвимости OpenSSH, помеченной как CVE-2017-15906, и было сказано, что «OpenSSH sftp-server позволяет создавать файлы нулевой длины в режиме только для чтения». Trustwave также сказал, что обновление до OpenSSH 7.6, по крайней мере, решит проблему.

Мы используем SFTP, и конфигурация была по умолчанию один со следующим значением для подсистемы:

Подсистема sftp / usr / libexec / openssh / sftp-server

Поскольку в CentOS 7 еще нет официальных обновлений для обновления OpenSSH с 7.4 до 7.6, я попытался обновить пакеты самостоятельно, ссылаясь на это руководство: Обновление OpenSSH на CentOS 6 или 7 . Я добился успеха в этом аспекте, однако здесь есть одна большая проблема. У меня был заблокирован SSH, и все наши ключи больше не работают, даже когда ssh -vvv сообщает, что ключ принят. Нас выгнали сразу после входа в систему. Служба поддержки Google Cloud (мы используем экземпляры Google Cloud CE) считает, что существует несовместимость с 7.6 и CentOS 7, и что RedHat и CentOS еще не выпустили обновления и все еще могут тестировать и исправлять ошибки:

Группа поддержки backline сделала ответьте мне.

Они смогли воспроизвести проблему, развернув свою собственную машину CentOS 7 [и обновив OpenSSH]. Они также не смогли подключиться к экземпляру по SSH после обновления OpenSSH до версии 7.6.

Согласно вашему предыдущему сообщению, вы были правы. Они тоже считают, что проблема вызвана изменением конфигурации PAM. На самом деле модуль PAM обновился некорректно. Технический специалист по бэклайну сделал резервную копию /etc/pam.d/sshd перед внесением изменений, затем он заметил, что после обновления пропало много строк. Он сравнил два файла. В новой версии /etc/pam.d/sshd всего 6 строк, тогда как в исходном файле было не менее 19 строк.

Я хотел бы добавить, что версия OpenSSH 7.6 не является изменением, внесенным RedHat / CentOS мейнстрим стабильный пока. Это означает, что хотя openSSH 7.6p1 выпущен, он еще не находится в стабильном режиме с Redhat (Centos). Команда Redhat все еще работает над исправлением некоторых ошибок.

Таким образом, обновление до OpenSSH 7.6 в настоящее время невозможно.

Я также вижу, что эта уязвимость наблюдается только в том случае, если SFTP находится в режиме только для чтения. Но как отключить этот режим я не знаю. Я пытался найти разные ресурсы, но, похоже, нет особого упоминания об этом режиме, а только «как они могут включить чтение только для определенного пользователя». Поскольку я использую файл конфигурации SSH по умолчанию, я не знаю, включен ли режим только для чтения по умолчанию или нет.

Я снова попытался изменить подсистемную часть / etc / ssd / sshd_config :

Подсистема sftp internal-sftp

И сканирование PCI все равно не удалось.

Я добавил еще одну конфигурацию под ним:

Match Group psacln
        ChrootDirectory /var/www/vhosts
        X11Forwarding no
        AllowTcpForwarding no
        ForceCommand internal-sftp

Что, как мне кажется, противоречит цели, потому что теперь я подключаюсь к основной папке vhosts вместо пользователя, которому назначена папка в vhosts (кажется, я могу назначить ChrootDirectory только папке, принадлежащей пользователю root). Я запросил сканирование на соответствие PCI после этого изменения и ожидаю результатов на момент написания этой статьи.

Если бы кто-нибудь мог указать мне, как эффективно отключить режим только для чтения на sftp-сервере OpenSSH или внутреннем sftp, я был бы очень признателен это, как я считаю, единственное, что мне нужно сделать, чтобы закрыть эту уязвимость.

Спасибо. экспорт сертификата

Может ли кто-нибудь предложить мне правильные шаги для этого и сгенерировать pfx , а затем выполнить подпись кода?

2
задан 1 February 2018 в 00:18
1 ответ
  1. Сгенерировать файл p12 из файла хранилища ключей с помощью keytool

    keytool -importkeystore -srckeystore E: \ path \ mycodesignstore -srcstorepass yourpassword -srckeypass password -destkeystore E: \ path \ filename.p12 -deststoretype PKCS12 -srcalias mycodesigncert -deststorepass password -destkeypass password

  2. Получить закрытый ключ из файла p12 с помощью openssl:

    openssl pkcs12 -in E: \ путь \ filename.p12 -passin pass: password -nocerts -out E: \ path \ filename.key -passout pass: password

  3. Преобразование файла закрытого ключа в файл pvk:

    openssl rsa -in E: \ path \ filename.key -outform PVK -pvk-strong -out E: \ path \ filename.pvk

  4. Создание файла pfx из файла spc и pvk:

    pvk2pfx.exe -pvk E: \ path \ filename.pvk -pi пароль -spc E: \ path \ yourspcfile-SHA2.spc -pfx E: \ path \ filename.pfx -po password -f

  5. Подписать исполняемый файл pfx файл:

    SignTool sign / f E: \ path \ имя файла.pfx / p пароль / tr http://tsa.starfieldtech.com / td SHA256 E: \ path \ yourexe_to_sign.exe

0
ответ дан 3 December 2019 в 14:01

Теги

Похожие вопросы