phpbb3 после имени пользователя приемлемый код для ввода - PullRequest
2 голосов
/ 23 декабря 2010

У меня есть список зарезервированных имен пользователей, которые я хотел бы запретить новым пользователям использовать до того, как я смогу их аутентифицировать.Аутентификация будет осуществляться путем размещения секретного кода на веб-сайте. Затем я проверю код на веб-сайте и разрешу им продолжить.Я уже написал методы для проверки подлинности кодов, но ...

Первое: чтение functions_user.php Я не могу понять, где последняя проверка имени пользователя находится в моем списке пользователей.Я был по всему файлу, и я даже не вижу, где они проверяют имя пользователя по базе данных.(Это важнее, чем вторая часть)

Второе: мне нужно где-то добавить ключ аутентификации (возможно, я мог бы просто записать его в плоский файл, поскольку в списке всего около 150 имен) - есть ли у кого-нибудькакие-нибудь предложения для этого?

Обновление

Думаю, я могу просто проигнорировать метод user_add и выполнить проверку, прежде чем он вообще туда попадет - я попробую.

На самом деле, подумав еще немного, я думаю, что мне нужно создать пользователя с секретным ключом, и если кто-то попытается войти в систему с одним из пользователей, я дам ему ключ для аутентификации и оттуда ....

1 Ответ

1 голос
/ 10 февраля 2011

ошибаться, это действительно запутано.

Предотвращение внедрения кода с использованием черного списка - пустая трата времени и вычислительных затрат.Правильный способ решения проблемы - экранировать содержимое в соответствии с носителем, на котором оно написано .

Если вы используете готовый код, которому действительно не доверяете, попробуйте что-то вроде ...

function is_nasty($str)
{
   if (htmlentities($str)!==$str) {
       return true;
   }
   if (mysql_escape_string($str)!==$str) {
       return true;
   }
   // any more checks you want to run....
   return false;
}
...