PHP POST 키 이름은 반쪽 공간을 사용하면 밑줄로 바뀝니다.

4683 단어 HTMLPHP

개시하다

  • PHPHTML 최소한의 지식을 가진 사람을 대상으로 한다.
  • POST의 구조 자체를 설명할 수 없다.
  • 샘플 코드


    index.html
    <!DOCTYPE html>
    <html lang="ja">
        <head>
            <meta charset="UTF-8">
        </head>
    
        <body>
            <form method="post" action='post_sample.php'>
                <input type='text' name='sample' value='sample'><br>
                <input type='text' name='全角文字' value='全角文字'><br>
                <input type='text' name='sample plus space' value='sample plus space'><br>
                <input type='text' name='sample.php' value='sample.php'><br>
                <input type='text' name='sample1[test]' value='sample1[test]'><br>
                <input type='text' name='sample2[test' value='sample2[test'><br>
                <input type='text' name='sample3test]' value='sample3test]'><br>
                <input type='submit'>
            </form>
        </body>
    </html>
    
    post_sample.php
    <?php
    echo('<pre>');
    var_dump($_POST);
    echo('</pre>');
    

    결실



    위 결과에서 뒷버튼 이름으로 지정된 반쪽 공백, 마침표, 브래킷 개별이 내부에 밑줄로 변환됩니다.PHP의 공식 홈페이지에도 밑줄로 바뀐 기록이 있기 때문에 PHP의 공식 규격인 것 같다.
    몰라서 메모와 공유한다는 뜻을 기사에 담았다.

    참고 자료


    http://jp2.php.net/manual/ja/language.variables.external.php

    끝말


    이번 조사는 메일박스의 키 값을 지정SQL의 열에 그대로 사용한 것으로 "어? 이거 주입할 수 있나요?"메일박스의 관건치drop table에서 공격을 준비한 배경이라고 생각합니다.그 결과 반각 공간이 밑줄로 전환돼 공격이 불가능했으나 안전을 위해 다른 방법으로 대체하기로 했다.
    호기심이 중요하죠
    상관없어요. 지난 기사 마지막에'다음에 쓰세요Rails편'이라고 했는데 다른 내용으로 바뀌었어요.Rails편을 그 중에서 쓰다.

    좋은 웹페이지 즐겨찾기