Предотвратить XSS-атаку в HTML-форме Paypal - PullRequest
0 голосов
/ 03 июля 2018

У меня возникла проблема со сканированием XSS при блокировке сайта. Они сказали, что некоторые URL из формы ввода html уязвимы. Они сказали, что каждый параметр, который я отправил через форму, был уязвим В этом случае уязвимость из формы ввода Paypal. Я создаю свой веб-сайт с помощью перенаправления Paypal, чтобы пользователь вводил свои собственные данные в форму, а система отправляла их на PayPal. Это пример кода моей формы:

<div class="col-md-5">
    <input type="text" class="form-control" name="L_PAYMENTREQUEST_FIRSTNAME" id="L_PAYMENTREQUEST_FIRSTNAME" value="<?=$_SESSION['post_value']['shipping_first_name']?>" readonly="readonly">
</div>

<input type="hidden" name="billing_first_name" value="<?=$_POST['billing_first_name']?>">
<input type="hidden" name="billing_last_name" value="<?=$_POST['billing_last_name']?>">
<input type="hidden" name="billing_email" value="<?=$_POST['billing_email']?>">
<input type="hidden" name="billing_phone" value="<?=$_POST['billing_phone']?>">
<input type="hidden" name="billing_address" value="<?=$_POST['billing_address']?>">
<input type="hidden" name="billing_city" value="<?=$_POST['billing_city']?>">
<input type="hidden" name="billing_postcode" value="<?=$_POST['billing_postcode']?>">
<input type="hidden" name="billing_state" value="<?=$_POST['billing_state']?>">

Это какая-то часть моей формы. То, что я хочу знать, что не так с этой формой и как предотвратить Sitelock для сканирования уязвимости XSS? Пожалуйста, кто-нибудь знает, может помочь мне.

Ответы [ 2 ]

0 голосов
/ 03 июля 2018

Я бы также рекомендовал использовать заголовок HTTP.

X-XSS-Protection: 1; mode=block

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection

0 голосов
/ 03 июля 2018

вы, вероятно, не проверяете / не обнуляете данные, которые получаете в полях ввода

и набрав <script>alert('hacked')</script> в поле billing_address

на следующей странице, где вы печатаете billing_address, вы получите всплывающее окно с вызовом hacked

На странице, которая обрабатывает вашу форму, вы должны проверить, что в полях ввода нет кода JavaScript.

например

<?php
// define variables and set to empty values
$name = $email = $gender = $comment = $website = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $name = test_input($_POST["name"]);
  $email = test_input($_POST["email"]);
  $website = test_input($_POST["website"]);
  $comment = test_input($_POST["comment"]);
  $gender = test_input($_POST["gender"]);
}

function test_input($data) {
  $data = trim($data);
  $data = stripslashes($data);
  $data = htmlspecialchars($data);
  return $data;
}
?>

вам нужно создать функцию наподобие test_input и запустить ее для всех ваших полей ввода

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...