Есть ли способ выйти из аутентификации дайджеста, выполненной в php. Я попробовал unset ($ _ SERVER ["PHP_AUTH_DIGEST"]); Но он не попросит переделать. Я знаю, если я закрою браузер, тогда он будет работать, и вот мои функции. function login(){ $realm = "Restricted area"; $users = array("jamesm"=>""); if (empty($_SERVER["PHP_AUTH_DIGEST"])) { header("HTTP/1.1 401 Unauthorized"); header("WWW-Authenticate: Digest realm=\"{$realm}\",qop=\"auth\",nonce=\"".uniqid()."\",opaque=\"".md5($realm)."\""); return […]
Каков самый точный способ получить IP-адрес пользователя в 2017 году через PHP? Я прочитал много SO вопросов и ответов об этом, но большинство ответов устарело и прокомментировано пользователями, что эти способы небезопасны. Например, взгляните на этот вопрос (2011): Как получить IP-адрес клиента в PHP? Ответ Тима Кеннеди содержит рекомендацию использовать что-то вроде: if (!empty($_SERVER['HTTP_CLIENT_IP'])) { […]
Всякий раз, когда я иду в /admin/logout , я правильно перенаправляюсь в корень моего проекта, но все же регистрируется, когда я посещаю /admin/ поскольку мне не запрашивают учетные данные. Вот моя конфигурация: security.yml security: firewalls: admin_area: pattern: ^/admin http_basic: ~ stateless: true switch_user: { role: ROLE_SUPER_ADMIN, parameter: _want_to_be_this_user } logout: { path: /admin/logout, target: / […]
Мне нужно создать случайные целые числа между значениями 0 и 10 000 000, и мне понадобится несколько миллионов таких чисел. Цифры должны быть как можно ближе к CSPRNG, так как, например, кто-то должен читать, поэтому 1 миллион из 2 миллионов таких чисел, которые они считают неосуществимыми, выработать оставшиеся 1 миллион номеров. После некоторых исследований я […]
У меня есть класс UserMapper <?php namespace Models; use Symfony\Component\Security\Core\User\UserProviderInterface; use Symfony\Component\Security\Core\User\UserInterface; use Symfony\Component\Security\Core\Exception\UnsupportedUserException; use Symfony\Component\Security\Core\Exception\UsernameNotFoundException; use \PDO; class UserMapper implements UserProviderInterface { /** * Database connection. */ var $db = NULL; /** * Constructor function. Loads model from database if the id is known. * * @param $db * Database connection */ function __construct() […]
Я создаю веб-сайт, и я очень OCD, когда дело доходит до безопасности, поэтому я слышал, что если вы храните все ваши .php-файлы за пределами вашей папки public_html и вызываете их с другим .php-файлом, который находится внутри вашей папки public_html, тогда ваш риск атака ниже. Это правда, если да, то как я это сделаю. Я читал […]
Каковы соображения безопасности, когда сервер извлекает файл из ненадежного домена? Каковы соображения безопасности при изменении размера изображения, которому не доверяют библиотеки PHP GD2? Файл будет сохранен на серверной машине и будет предлагаться для загрузки. Я знаю, что не могу доверять заголовку MIME-Type. Есть ли что-нибудь еще, о чем я должен знать? У меня есть веб-сервис, […]
Если у меня есть вызов AJAX для php-скрипта, например (с помощью jQuery) $.ajax(url: "../myscript.php"); и myscript выглядит так: <?php //code that does something to db ?> Я хочу знать, как запретить пользователю просто перейти на example.com/myscript.php для выполнения сценария.
В последнее время я обнаружил пару сайтов vBulletin, которые я администрирую. Они используют последнюю версию серии 3.8 (3.8.7 Patch Level 2). Обычно мне хорошо удается найти дыры, где они попадают, и исправлять их, но это меня толкает. Они вводят данные в таблицы MySQL. Атака всегда происходит, когда они делают запрос GET скрипту faq.php . Я […]
Я разработчик нового веб-сайта, созданного на PHP, и мне интересно, что именно лучше всего использовать для хэширования. Я посмотрел на md5 и sha1, но есть ли что-то более безопасное. Прошу прощения, если это вопрос, но я новичок в PHP Security, и я стараюсь сделать сайт максимально безопасным. И что такое соль? Благодаря, Waseem