(PHP, JavaScript 및 HTML)의 '편집'필드 웹 양식에서 오류를 유발하는 방법

토스터에

편집 필드에 텍스트를 입력하여 웹 사이트를 중단해야합니다. Edit 필드는 PHP 코드와 JavaScript에서 뒤에 Varchar 값처럼 사용됩니다. 이 예에서 유효성 검사를 우회 할 수 있습니까?

이론상 오류를 일으킬 수있는 것.

AnthonyB

이 답변 모든 위반 사항을 설명하는 것은 아닙니다 ! 가장 일반적인 두 가지만 설명합니다.

SQL 주입 으로부터 보호

SQL 주입은 동작을 수정하기 위해 쿼리에 SQL을 주입하는 것입니다. 예 : ' OR 'a' = 'a비밀번호를 입력하지 않도록 HTML 입력에 삽입 합니다.

이를 방지하려면 문자열을 이스케이프해야합니다.

SQL 쿼리는 문자열 일 뿐이므로 다음과 같이 할 수 있습니다.

<?php
$value = "blue";
$query = "select * from table where column = '" . mysqli_real_escape_string($value) . "'";

설명 : $ value 변수의 값이 $ query에 설정되어 있습니다. 그러나 더 이상 보안이 없으면 SQL 주입을 수행 할 수 있습니다. 그래서 mysqli_real_escape_string을 사용하고 있습니다. 그러나 만약 변수라면 값을 삽입하고 싶다면 준비된 문장을 선호해야합니다 .

PDO를 사용한 준비된 진술의 예 (문서에서) :

<?php
$dbh = new PDO('mysql:host=localhost;dbname=yourdbname;charset=utf8', 'yourUsername', 'yourPassword');
$stmt = $dbh->prepare("SELECT * FROM REGISTRY where name = :name");
$stmt->execute(array('name' => $name));
$allResults = $stmt->fetchAll(PDO::FETCH_COLUMN);

사용할 상수를 확인하려면 PDOStatement :: fetchAll참조하십시오 .

몇 가지 일반적인 공격으로부터 자신을 보호하기 위해 가장 일반적인 것을 관리하는 프레임 워크 (Ex Symfony , Yii 또는 기타)를 사용할 수 있습니다.

XSS (교차 사이트 스크립팅) 로부터 보호

XSS는 대상 웹 사이트에서 일부 코드를 실행하는 기술입니다. 예 :

양식 (입력 또는 텍스트 영역)을 채우고 이름 대신 다음과 같이 자바 스크립트 코드를 입력합니다.

<script>
  alert('xss');  
</script>

XSS 공격이 작동하면 웹 사이트에서이 값을 표시하려고 할 때 브라우저에 팝업이 표시되어야합니다.

XSS로부터 자신을 보호하려면

첫 번째 규칙은 사용자 입력을 신뢰하지 않음 입니다. 따라서 사용자가 양식에 무언가를 입력하거나 사용자로부터 오는 정보는 안전하지 않은 상태로 취급되어야합니다. 정보는 안전하지 않으므로 표시하기 전에 이스케이프해야합니다.

echo htmlspecialchars($value);

htmlspecialchars 참조

또한 자동 변수를 이스케이프 처리하는 Twig 또는 Smarty 와 같은 템플릿 엔진을 사용할 수 있습니다 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

'만들기'및 '편집'작업을 위해 양식의 특정 필드를 표시하는 방법-Symfony3

분류에서Dev

Lotus Notes에서 웹 양식을 사용하여 워드 문서 첨부를 편집하는 방법

분류에서Dev

Woocommerce에서 "다른 주소로 배송"양식의 필드를 편집하는 방법은 무엇입니까?

분류에서Dev

사용자가 필드를 편집 할 때 Javascript에 의한 양식 필드 편집이 실패 함

분류에서Dev

PHP에서 편집 가능한 PDF 양식을 만드는 방법

분류에서Dev

사용자 정의 Eclipse 편집기에서 구문 오류에 대한 오류 호버를 만드는 방법

분류에서Dev

HTML5 양식-PHP 유효성 검사에서 오류를 표시하는 의미 론적 방법

분류에서Dev

콘텐츠 유형의 편집 모드에서 서식있는 텍스트 필드에 포커스를 설정하는 방법은 무엇입니까?

분류에서Dev

Vue에서 동적 편집기 양식 구성 요소를 만드는 방법

분류에서Dev

양식에서 편집 가능한 콤보 상자를 만드는 방법

분류에서Dev

Android에서 클릭 및 편집 가능한 텍스트 필드를 만드는 방법은 무엇입니까?

분류에서Dev

사용자가 열 때마다 Lotus Notes 양식에서 편집 가능한 텍스트 필드의 값을 유지하는 방법은 무엇입니까?

분류에서Dev

html 양식 출력에서 라이브 업데이트를 위해 javascript 함수를 편집하는 방법이 있습니까?

분류에서Dev

필드를 편집하고 필드를 선택하는 Django Foreignkey 양식을 입력하는 방법

분류에서Dev

HTML 및 PHP : 양식에서 버튼을 관리하는 방법

분류에서Dev

datepicker의 날짜 필드를 편집 할 수없는 방법

분류에서Dev

편집 양식을 위해 React의 입력 필드에 기존 값을 입력하는 방법

분류에서Dev

cakephp3.0 유효성 검사의 편집 모드에서 고유 한 유효성 검사에서 수직 필드를 제외하는 방법

분류에서Dev

무료 jqgrid 인라인 및 양식 편집에서 셀 크기를 채우고 글꼴을 늘리기 위해 요소 크기를 만드는 방법

분류에서Dev

Mac OS X의 Atom 텍스트 편집기에서 php-fmt 코드 포맷터를 설정하는 방법

분류에서Dev

플라스크 peewee 양식을 편집 / 작성할 때 필드 순서를 변경하는 방법

분류에서Dev

양식 클래스 및보기에서 필드를 제거하는 방법

분류에서Dev

웹 페이지 / 양식에서 필수 필드를 처리하는 방법 (양식 작성 중 필수 필드를 건너 뛸 때)

분류에서Dev

C #의 파생 클래스에서 편집하지 않도록 필드를 제한하는 방법

분류에서Dev

IntelliJ IDEA의 "Implemented Method Body"에서 가져 오기를 추가하는 방법 : 설정-> 편집기-> 파일 및 코드 템플릿-> 구현 된 메서드 본문?

분류에서Dev

object.key에 대한 편집기의 오류를 제거하는 방법

분류에서Dev

xamarin 양식에서 CKEditor 또는 HTML 편집기를 구현하는 방법은 무엇입니까?

분류에서Dev

Javascript를 사용하여 HTML 양식 텍스트 상자를 편집하는 방법은 무엇입니까?

분류에서Dev

FileMaker-PHP API를 사용하여 컨테이너 필드 편집 및 URL 스크립트에서 삽입

Related 관련 기사

  1. 1

    '만들기'및 '편집'작업을 위해 양식의 특정 필드를 표시하는 방법-Symfony3

  2. 2

    Lotus Notes에서 웹 양식을 사용하여 워드 문서 첨부를 편집하는 방법

  3. 3

    Woocommerce에서 "다른 주소로 배송"양식의 필드를 편집하는 방법은 무엇입니까?

  4. 4

    사용자가 필드를 편집 할 때 Javascript에 의한 양식 필드 편집이 실패 함

  5. 5

    PHP에서 편집 가능한 PDF 양식을 만드는 방법

  6. 6

    사용자 정의 Eclipse 편집기에서 구문 오류에 대한 오류 호버를 만드는 방법

  7. 7

    HTML5 양식-PHP 유효성 검사에서 오류를 표시하는 의미 론적 방법

  8. 8

    콘텐츠 유형의 편집 모드에서 서식있는 텍스트 필드에 포커스를 설정하는 방법은 무엇입니까?

  9. 9

    Vue에서 동적 편집기 양식 구성 요소를 만드는 방법

  10. 10

    양식에서 편집 가능한 콤보 상자를 만드는 방법

  11. 11

    Android에서 클릭 및 편집 가능한 텍스트 필드를 만드는 방법은 무엇입니까?

  12. 12

    사용자가 열 때마다 Lotus Notes 양식에서 편집 가능한 텍스트 필드의 값을 유지하는 방법은 무엇입니까?

  13. 13

    html 양식 출력에서 라이브 업데이트를 위해 javascript 함수를 편집하는 방법이 있습니까?

  14. 14

    필드를 편집하고 필드를 선택하는 Django Foreignkey 양식을 입력하는 방법

  15. 15

    HTML 및 PHP : 양식에서 버튼을 관리하는 방법

  16. 16

    datepicker의 날짜 필드를 편집 할 수없는 방법

  17. 17

    편집 양식을 위해 React의 입력 필드에 기존 값을 입력하는 방법

  18. 18

    cakephp3.0 유효성 검사의 편집 모드에서 고유 한 유효성 검사에서 수직 필드를 제외하는 방법

  19. 19

    무료 jqgrid 인라인 및 양식 편집에서 셀 크기를 채우고 글꼴을 늘리기 위해 요소 크기를 만드는 방법

  20. 20

    Mac OS X의 Atom 텍스트 편집기에서 php-fmt 코드 포맷터를 설정하는 방법

  21. 21

    플라스크 peewee 양식을 편집 / 작성할 때 필드 순서를 변경하는 방법

  22. 22

    양식 클래스 및보기에서 필드를 제거하는 방법

  23. 23

    웹 페이지 / 양식에서 필수 필드를 처리하는 방법 (양식 작성 중 필수 필드를 건너 뛸 때)

  24. 24

    C #의 파생 클래스에서 편집하지 않도록 필드를 제한하는 방법

  25. 25

    IntelliJ IDEA의 "Implemented Method Body"에서 가져 오기를 추가하는 방법 : 설정-> 편집기-> 파일 및 코드 템플릿-> 구현 된 메서드 본문?

  26. 26

    object.key에 대한 편집기의 오류를 제거하는 방법

  27. 27

    xamarin 양식에서 CKEditor 또는 HTML 편집기를 구현하는 방법은 무엇입니까?

  28. 28

    Javascript를 사용하여 HTML 양식 텍스트 상자를 편집하는 방법은 무엇입니까?

  29. 29

    FileMaker-PHP API를 사용하여 컨테이너 필드 편집 및 URL 스크립트에서 삽입

뜨겁다태그

보관