Лучший способ скрыть поле ввода формы от доступа с помощью firebug - PullRequest
2 голосов
/ 18 августа 2010

У меня есть форма, которая размещена во внешнем API.Существует параметр под названием customer_token, который передается в качестве поля ввода.Он используется для аутентификации API, и каждому клиенту назначается один токен.Поле ввода отображается в Firebug Firefox (даже если это скрытое поле).

Как мне это скрыть?

Параметры Использование javascript, как я думал изначально

Я думаю, используя javascript для создания этого поля ввода во время выполнения перед отправкой формы и немедленноудаление поля будет работать, но поле все равно появится на мгновение.Поэтому, даже если человек не может получить его вручную, я боюсь, что сканер или паук (я не знаю точного термина - но какой-то автоматический скрипт) может получить токен клиента.Есть ли лучшее решение для этого?После отправки формы та же самая форма остается отображенной.

Использование одноразовой концепции токена, как это предложено Ikke

Я не уверен, как она будет работать?Для обработки любого запроса API требуется правильное значение токена клиента.Таким образом, даже для генерации одноразового токена и возврата необходимо отправить запрос с токеном клиента.Таким образом, каждый сможет увидеть значение моего токена клиента, а также отправить запрос на получение одноразового токена и его использование.Так как же это решить проблему?

Решено Проверьте Как отправить форму на мой сервер, а затем в API, вместо прямой публикации (по соображениям безопасности)? Спасибо, Сандипан

Ответы [ 2 ]

5 голосов
/ 18 августа 2010

Это не возможно.Firebug просто читает DOM в его текущем состоянии, поэтому, даже если он добавлен на более позднем этапе, его все равно можно получить.

Этот способ безопасности называется Безопасность через неизвестность и является своего рода не-безопасностью.Вам придется решить ее другим способом, например, позволить серверу выполнить запрос вместо него.

Вы разрешаете пользователю отправлять форму на сервер.Затем, набрав curl , вы звоните в веб-службу с правильным кодом пользователя.

0 голосов
/ 18 августа 2010

Я не думаю, что это возможно, я боюсь.

Firebug по-прежнему будет видеть элемент, если он вставлен через Javascript, поскольку он наблюдает за деревом DOM. Если этот вход обнаруживает уязвимость безопасности, то задача вашего серверного кода - проверить / исправить его.

Более подробная информация об API может помочь кому-нибудь ответить на этот вопрос более подробно.

Надеюсь, это поможет

...