Безопасен ли PHPMailer

0

Я знаю, что это, вероятно, непростой вопрос, но я разрабатываю несколько веб-форм и хочу, чтобы библиотека PHP, которую я могу использовать для отправки почты, и автоматически обрабатывать данные. Я смотрел PHPMailer, который выглядел довольно простым в настройке.

Является ли PHPMailer защищенной библиотекой для предотвращения того, чтобы мои формы не подвергались внедрению SQL Injection/E-mail Injection/XSS и т.д.? Я признаю, что ничего не на 100% безопасно, но я ищу простой сценарий для использования без необходимости дезинфекции данных.

  • 0
    Это зависит от того, где будет отображаться это письмо. Вы должны разрешать только обычные текстовые письма (мое личное мнение, я ненавижу HTML письма). Более важно то, что вы не разрешаете спаму злоупотреблять вашими внешними интерфейсами как спам-шлюзом, поэтому допускайте, например, только 1 сообщение в минуту на IP / cookie / ... и никаких произвольных получателей.
  • 0
    Немедленно отключите сегодня ваш phpmailer, если ваша cms использует его на эту дату, пока не выпущено исправление безопасности: legalhackers.com/advisories/…
Теги:
phpmailer

2 ответа

3

PHPMailer не создает и не использует какой-либо SQL сам, и не имеет никакого отношения к javascript, поэтому он защищен на этих фронтах. Он часто используется рядом с кодом, который делает оба, но это не проблема PHPMailer.

Он применяет фильтрацию к заголовкам, чтобы избежать атак заголовков, и (насколько я знаю!) Правильно строит заголовки, чтобы убежать и закодировать в соответствии с RFC. Обычно PHPMailer предпочитает строгое техническое соблюдение там, где это практически возможно. Существует одна открытая проблема, касающаяся соответствия длины строки.

Если вы используете PHP 5.6 с настройками по умолчанию, он проверяет SSL/TLS-сертификаты на безопасные соединения. Раньше версии PHP не делали этого по умолчанию, и вы можете отключить его в PHP 5.6, хотя ни один из них не рекомендуется. Существует открытая проблема, связанная с форсированием этого параметра в ранних версиях PHP.

Все, что было сказано, конечно, PHPMailer (как и любая техническая библиотека) можно злоупотреблять, чтобы отправлять всевозможные неприятные фишинг, спам и вредоносное ПО, а класс SMTP можно использовать, чтобы попытаться запутать ад из почтовых серверов, хотя он попытается его труднее обеспечить, чтобы он делал это с максимальным уважением к RFC.

  • 0
    Спасибо за информацию. Я не был уверен, что внедрение SQL по-прежнему должно вызывать у меня беспокойство (например, могли ли хакеры угадать имя пользователя / пароль БД и ввели правильный код для установления соединения с базой данных). У меня сложилось впечатление, что PHPMailer проделал хорошую работу, гарантировав, что что-то удалось избежать, и обработав инъекцию заголовка, но просто хотел получить другое мнение. Еще раз спасибо.
  • 0
    Если пользователь угадает имя пользователя и пароль БД, внедрение будет наименьшим из ваших беспокойств. Вы можете установить соединение с базой данных с помощью стороннего программного обеспечения.
0

На данный момент существует рекомендуемый патч для уязвимостей для версий до 5.2.18. Загрузить здесь https://github.com/PHPMailer/PHPMailer

Цитата из Hacker News (http://thehackernews.com/2016/12/phpmailer-security.html) дает краткое резюме:

Критическая уязвимость (CVE-2016-10033), обнаруженная польским исследователем безопасности Давидом Голунски (Dawid Golunski), позволяет злоумышленнику удаленно выполнять произвольный код в контексте веб-сервера и компрометировать целевое веб-приложение.

"Чтобы использовать уязвимость, злоумышленник может ориентироваться на общие компоненты веб-сайта, такие как формы контактов/обратной связи, формы регистрации, сброс электронной почты с паролем и другие, которые отправляют электронные письма с помощью уязвимой версии класса PHPMailer", - пишет Голунски в опубликованном Cегодня.

Технические подробности будут размещены здесь: https://legalhackers.com/papers/Pwning-PHP-mail-func-For-Fun-And-RCE-New-Exploit-Techniques-Vectors.html

Ещё вопросы

Сообщество Overcoder
Наверх
Меню