Как предотвращать атаку GET этого типа, который превращает Веб в ссылку в видео youtube?

Они это добавили (sguido в url домена) и он превращается в ссылку в видео youtube. Как предотвращать это?

www.ejemplo.com/registrarForm.php?msg=%3Csvg%2Fonload%3Deval (atob (%27d2luZG93LmxvY2F0aW9uPSdodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PWRRdzR3OVdnWGNRJw) %3E

Действительно не изменен первоначальный Веб, но превращается в ссылку, которая могла бы выполнять любую вещь, даже рукописный шрифт javascript. Как предотвращать это?

form - следующий:

<form class="form-signin" action="insertarRegistroUsuario.php" method="post" enctype="multipart/form-data">

      <?php if (isset($_GET['msg'])) { echo $_GET['msg']; } ?>

      <input type="text" id="nombreusuarioUsuario" name="nombreusuarioUsuario" class="form-control" placeholder="Nombre de usuario" required autofocus>

      <input type="email" id="inputEmail" class="form-control" id="emailusuario" name="emailUsuario" placeholder="Email" required autofocus>

      <input type="password" id="passwordUsuario" name="passwordUsuario" class="form-control" placeholder="Password" required>

      <input type="password" id="passwordUsuario2" name="passwordUsuario2" class="form-control" placeholder="Repetir Password" required>

      <input type="text" id="localidadUsuario" name="localidadUsuario" class="form-control" placeholder="Localidad" required autofocus>

      <input type="text" id="codigoPostalUsuario" name="codigoPostalUsuario" class="form-control" placeholder="Codigo Potal" required autofocus>

      <button class="btn btn-lg btn-primary btn-block" type="submit">Confirmar</button>

    </form>

Также они "атаковали" меня таким образом (так, что первоначальный Веб не был изменен):

www.ejemplo.com/registrarseForm.php?msg=<img src="https://s3.amazonaws.com/ceblog/wp-content/uploads/2016/04/22110359/youve-been-hacked.png" />
4
задан 02.01.2019, 17:03
3 ответа

То, что ты можешь делать, состоит в том, чтобы контролировать точно, что будет появляться на экране, например:

<?php

if (isset(

То, что ты можешь делать, состоит в том, чтобы контролировать точно, что будет появляться на экране, например:

[110]

По мере того, как ты сделал mГЎs сложная ее programaciГіn delegarГЎs она impresiГіn из ошибок до рутины especГ-fica, что harГЎ немного mГЎs, что доставать сообщение экрану (писать ошибку в log, например), но тем временем, несмотря на то, что не достал такой текст, который mГЎs, что достаточный.

В этом pequeГ±o пример используют пару parГЎmetros, чтобы говорить ему в рукописный шрифт, что он должен доставать из-за экрана в случае ошибки, но podrГ, - чтобы быть любой вещью, в которой ты нуждался бы.

Имей в виду, что также он не делает слишком много отсутствие пользователю informaciГіn tГ©cnica, например, не доставай консультации sql из-за экрана, что Гєnico, которую он облегчает, состоит в том, чтобы давать отпечатки возможной умышленной атаке.

Данные tГ©cnicos sГЎcalos в log и из-за индийского экрана только что-то, что могло бы подавать пользователя (и что понимало бы): ' IntГ©ntelo mГЎs поздно', 'PГіngase в контакте', 'не использовало специальные символы'....

ЗАМЕЧАЕТ

Для log это достаточно с нею instrucciГіn php_log () и ты можешь считать твои сообщения ошибки настроенными рядом с ошибки php или, если ты показываешь это ему, иметь их в независимом файле.

ПРИЕМ

Вещь, которая может делаться, чтобы облегчать ее depuraciГіn в producciГіn (если он не любит или нет, возможно иметь видимый log в реальном времени), он состоит в том, чтобы санкционировать заблаговременно пользователя logueado, и если он - "администратор" podrГ, - чтобы доставать из-за экрана informaciГіn чувствительного, как консультации sql, стоимость переменных sesiГіn или корзин объектов.

GET['msg'])) { if (

То, что ты можешь делать, состоит в том, чтобы контролировать точно, что будет появляться на экране, например:

[110]

По мере того, как ты сделал mГЎs сложная ее programaciГіn delegarГЎs она impresiГіn из ошибок до рутины especГ-fica, что harГЎ немного mГЎs, что доставать сообщение экрану (писать ошибку в log, например), но тем временем, несмотря на то, что не достал такой текст, который mГЎs, что достаточный.

В этом pequeГ±o пример используют пару parГЎmetros, чтобы говорить ему в рукописный шрифт, что он должен доставать из-за экрана в случае ошибки, но podrГ, - чтобы быть любой вещью, в которой ты нуждался бы.

Имей в виду, что также он не делает слишком много отсутствие пользователю informaciГіn tГ©cnica, например, не доставай консультации sql из-за экрана, что Гєnico, которую он облегчает, состоит в том, чтобы давать отпечатки возможной умышленной атаке.

Данные tГ©cnicos sГЎcalos в log и из-за индийского экрана только что-то, что могло бы подавать пользователя (и что понимало бы): ' IntГ©ntelo mГЎs поздно', 'PГіngase в контакте', 'не использовало специальные символы'....

ЗАМЕЧАЕТ

Для log это достаточно с нею instrucciГіn php_log () и ты можешь считать твои сообщения ошибки настроенными рядом с ошибки php или, если ты показываешь это ему, иметь их в независимом файле.

ПРИЕМ

Вещь, которая может делаться, чтобы облегчать ее depuraciГіn в producciГіn (если он не любит или нет, возможно иметь видимый log в реальном времени), он состоит в том, чтобы санкционировать заблаговременно пользователя logueado, и если он - "администратор" podrГ, - чтобы доставать из-за экрана informaciГіn чувствительного, как консультации sql, стоимость переменных sesiГіn или корзин объектов.

GET['msg'] == 'error') { switch (

То, что ты можешь делать, состоит в том, чтобы контролировать точно, что будет появляться на экране, например:

[110]

По мере того, как ты сделал mГЎs сложная ее programaciГіn delegarГЎs она impresiГіn из ошибок до рутины especГ-fica, что harГЎ немного mГЎs, что доставать сообщение экрану (писать ошибку в log, например), но тем временем, несмотря на то, что не достал такой текст, который mГЎs, что достаточный.

В этом pequeГ±o пример используют пару parГЎmetros, чтобы говорить ему в рукописный шрифт, что он должен доставать из-за экрана в случае ошибки, но podrГ, - чтобы быть любой вещью, в которой ты нуждался бы.

Имей в виду, что также он не делает слишком много отсутствие пользователю informaciГіn tГ©cnica, например, не доставай консультации sql из-за экрана, что Гєnico, которую он облегчает, состоит в том, чтобы давать отпечатки возможной умышленной атаке.

Данные tГ©cnicos sГЎcalos в log и из-за индийского экрана только что-то, что могло бы подавать пользователя (и что понимало бы): ' IntГ©ntelo mГЎs поздно', 'PГіngase в контакте', 'не использовало специальные символы'....

ЗАМЕЧАЕТ

Для log это достаточно с нею instrucciГіn php_log () и ты можешь считать твои сообщения ошибки настроенными рядом с ошибки php или, если ты показываешь это ему, иметь их в независимом файле.

ПРИЕМ

Вещь, которая может делаться, чтобы облегчать ее depuraciГіn в producciГіn (если он не любит или нет, возможно иметь видимый log в реальном времени), он состоит в том, чтобы санкционировать заблаговременно пользователя logueado, и если он - "администратор" podrГ, - чтобы доставать из-за экрана informaciГіn чувствительного, как консультации sql, стоимость переменных sesiГіn или корзин объектов.

GET['code']) { case '001': $error = 'Error de la trocola del cigüeñal'; break; case '002': $error = 'Error de usuario reincidente'; break; default: $error = 'Error desconocido, salga y vuelva a entrar'; break; } echo '<div class="error">' . $error . '</div>'; } } ?>

По мере того, как ты сделал mГЎs сложная ее programaciГіn delegarГЎs она impresiГіn из ошибок до рутины especГ-fica, что harГЎ немного mГЎs, что доставать сообщение экрану (писать ошибку в log, например), но тем временем, несмотря на то, что не достал такой текст, который mГЎs, что достаточный.

В этом pequeГ±o пример используют пару parГЎmetros, чтобы говорить ему в рукописный шрифт, что он должен доставать из-за экрана в случае ошибки, но podrГ, - чтобы быть любой вещью, в которой ты нуждался бы.

Имей в виду, что также он не делает слишком много отсутствие пользователю informaciГіn tГ©cnica, например, не доставай консультации sql из-за экрана, что Гєnico, которую он облегчает, состоит в том, чтобы давать отпечатки возможной умышленной атаке.

Данные tГ©cnicos sГЎcalos в log и из-за индийского экрана только что-то, что могло бы подавать пользователя (и что понимало бы): ' IntГ©ntelo mГЎs поздно', 'PГіngase в контакте', 'не использовало специальные символы'....

ЗАМЕЧАЕТ

Для log это достаточно с нею instrucciГіn php_log () и ты можешь считать твои сообщения ошибки настроенными рядом с ошибки php или, если ты показываешь это ему, иметь их в независимом файле.

ПРИЕМ

Вещь, которая может делаться, чтобы облегчать ее depuraciГіn в producciГіn (если он не любит или нет, возможно иметь видимый log в реальном времени), он состоит в том, чтобы санкционировать заблаговременно пользователя logueado, и если он - "администратор" podrГ, - чтобы доставать из-за экрана informaciГіn чувствительного, как консультации sql, стоимость переменных sesiГіn или корзин объектов.

4
ответ дан 20.11.2019, 01:51

Ты можешь использовать одну funciГіn в PHP названных htmlspecialchars. Ты можешь находить mГЎs ссылки в этом ссылка .

то, что funciГіn, делает состоит в том, чтобы убегать HTML в организации, таким образом любой тип cГіdigo, уже будьте Javascript или HTML, не ejecutarГЎ.

ты можешь использовать Это в тебе cГіdigo как:

echo htmlspecialchars(

Ты можешь использовать одну funciГіn в PHP названных htmlspecialchars. Ты можешь находить mГЎs ссылки в этом ссылка .

то, что funciГіn, делает состоит в том, чтобы убегать HTML в организации, таким образом любой тип cГіdigo, уже будьте Javascript или HTML, не ejecutarГЎ.

ты можешь использовать Это в тебе cГіdigo как:

[110]GET['msg']);
3
ответ дан 20.11.2019, 01:51


я делает время разработайте одну funciГіn в php то, что он делает, sanizar string php снимая этикетки html атак mysql iframes и много другие.

существует strip_tag в php, но не является очень безопасной, так как exiten тысячи способов герметизировать в корпусе фрагмент cГіdigo злонамеренный и это вводить.

ej использовал

$msj = '"
полужирный шрифт alert ("hacked");'; я бросаю clear_data ($msj); Последованные

: полужирный шрифт - hacked только возвращает текст, если это относится как к рукописному шрифту form strong eleminara

к функции

function clear_data($string, $force_lowercase=true,$anal=false){
$strip = array("~", "`", "!", "#", "$", "%", "^", "&", "*", "(", ")", "_", "=", "+", "[", "{", "]", "}", "\\", "|", ";", ":", "\"", "'", "&#8216;", "&#8217;", "&#8220;", "&#8221;", "&#8211;", "&#8212;", "—", "–", ",", "<", ">", "/", "?", "<form>", "href", "alert", "()", 'applet', 'body', 'bgsound', 'base', 'basefont', 'embed', 'frame', 'frameset', 'head', 'html', 'id', 'iframe', 'ilayer', 'layer', 'link', 'meta', 'name', 'object', 'script', 'style', 'title', 'xml');
$clean = trim(str_replace($strip, "", strip_tags($string)));
$clean = preg_replace('/\s+/', "-", $clean);
$clean = ($anal) ? preg_replace("/[^a-zA-Z0-9]/", "", $clean) : $clean;
return ($force_lowercase) ?
(function_exists('mb_strtolower')) ?
mb_strtolower($clean, 'UTF-8') :
strtolower($clean) :
$clean;
}
0
ответ дан 20.11.2019, 01:51