<��������(2005ǯ12��25��) ��������(2005ǯ12��31��)> �ǿ� �Խ�

���ڹ��������������

�ܼ� �Ϥ���� Ϣ����:[email protected]
ˬ��Կ� ����: 403   ����: 1571

2005ǯ12��27��

�� �ץ�����ߥ󥰲�����Ҥ��ȼ�����ɤ����뤫

���������ή�̤�����Ҥ��ȼ��������롢�Ĥޤ�Ǻܤ���Ƥ��륵��ץ륳���ɤ˥��Х��ȼ���������Ȥ����ȼ����򻺤ߤ䤹�������ǥ��󥰥��������ȤˤĤ������Ƥ�����⤬���ꡢ���줬�ȼ�ʥץ�����ޤ�������³���뺬���ˤʤäƤ�������ϡ��֤ʤ�Ȥ����ʤ��Ȥ����ʤ��ͤ��פȰ�����������Ƥ�����

���եȥ��������ʤ��ȼ����ϡ���Ŧ������Хѥå����󶡤��줿�꽤���Ǥ˺����ؤ���줿�ꤹ�뤬�����Ҥ��ȼ����Ϥɤ���������ɽ���������ޤ��Ȥ�������������֤��Ȥ��뤫�Ȥ����ȡ������˾�᤽���ˤʤ��������ˤϸ������й�����Ф褤�Ȥ������Ȥˤʤ����������

�פ��֤�ˤ����Ĥ��ν��ҤˤĤ���Ĵ�٤Ƥߤ���������Ĥ���������ʤɤ����ŪɾȽ�ɤ��Ҳ𤵤�Ƥ���2�����ɤ����

��PHP�����Υĥܡפϡ֥����奢�ץ�����ߥ��ԡפ���äƤ�����ˡ������ʤ�ǽ�Υ���ץ륳���ɤ��餷�ƥ����������ȥ�����ץƥ����ȼ��������롣����(A)

<?php
$strdate = $_GET['strdate'];
echo <<<EOD
����ʸ��������Ϥ��Ƥ���������
<form>
<input type="text" name="strdate" value="{$strdate}">
<input type="submit" value="OK">
</form>
EOD;
if (!$strdate) {

�ʰʲ�ά��

����ͦ, PHP�����Υĥ� �����奢�ץ�����ߥ���, ��ŷ��, p.3

ư�����Ƥߤ�ȿ�1�Τ褦���ȼ�������ǧ�Ǥ��롣

��1: ��PHP�����Υĥܡפκǽ�Υ���ץ륳���ɤ��ȼ�Ǥ����ͻ�*1

p.158�ˤϤ���ʲ��⤬���롣����(B)

������ʸ����Ϻ������

����������Ф��Ƥϡ��ѿ� $filename ����˾�̥ǥ��쥯�ȥ�򼨤���../�פȤ���ʸ���󤬤��ä���硢Ŭ�ڤ��Ѵ����뤷������ޤ���

1�ĤϾ�̥ǥ��쥯�ȥ�����ʸ�������������ˡ�Ǥ���

$filename = $_GET["filename"];
// ��̥ǥ��쥯�ȥ�������
$filename = str_replace("../", "", $filename);

����ͦ, PHP�����Υĥ� �����奢�ץ�����ߥ���, ��ŷ��, p.158

�����ŵ��Ū�ˤ褯����ޤ����к�����

$filename = "----..././----";
$filename = str_replace("../", "", $filename);
echo $filename;

�μ¹Է�̤ϡ�----../----�פ�ɽ������롣

������p.213�ˤϤ��ε��ҤȤ�����

���ѥ����Ȥʤɤ�SSL����Ѥ�����ϡ�����Ū��ǧ�ڶɡ�Certificate Authority:CA�ˤ�ȯ�Ԥ��줿���������Ѥ��ޤ���

���ѥ����Ȥʤɤ�ñ�˰Ź沽����Ū�����ʤ��ץ饤�١���CA��ȯ�Ԥ���������Ǥ����ꤢ��ޤ��������������ץ饤�١���CA��ȯ�Ԥ������������Ѥ����硢SSL�Ǥ���³���˥֥饦������ٹ��å�������ɽ������ޤ��ʿ�5�ˡ�

����ͦ, PHP�����Υĥ� �����奢�ץ�����ߥ���, ��ŷ��, p.213

�����������Ҥ�����������������Ƥ����Τ����������λ���ˡ�ʲ��Ȥ����櫓�ˤ⤤���ʤ����ġġ�

�� �֥��˥����������ʥ����ڡ���פȤϲ���

�⤦�����PHP�����С��ƥ��ε�ˡ��������ɸ�μº��Ϥɤ����Ȥ����ȡ�ȴ���ܤʤ��񤳤��Ȥ�����θ������졢�������ˤ��Ȥ褯�񤫤줿*2�ܤǤ��롣

�������������ʥץ�����ߥ󥰼�ˡ�Ȥ��������ǤϤʤ��������ޤǥ������ƥ��к����Ȥ��������ǽ񤫤�Ƥ���Ȥ��������꤬�Ĥ롣

���Ȥ��С�p.28�Υ����������ȥ�����ץƥ����ȼ������к������ɤ򸫤Ƥߤ롣����(C)

������ʲ��Τ褦�˽������ޤ���

while ( $row = mysql_fetch_array( $result , MYSQL_ASSOC ) ) {
    echo '<p>' ;
    echo 'No.'.$row['id'].'<br />' ;
    echo '��̾:'.htmlspecialchars($row['title'],ENT_QUOTES).'<br />' ;
    echo '̾��:'.htmlspecialchars($row['name'],ENT_QUOTES).'<br />' ;
    echo '����:'.$row['postdate'].'<br />' ;

����

�����������ɤΰ㤤�ϰ����������Ȼפ��ޤ�������������Ƥγƥƥ����Ȥ����֥饦����ɽ�������ľ��*04�ˡ�htmlspecialchars(�ʥƥ����ȡ�,ENT_QUOTES)���̲ᤷ�Ƥ��ޤ������줬��HTML�����ѥ��˥������פǤ���

GIJOE, PHP�����С��ƥ��ε�ˡ��������ɸ�μº�, ������, p.29

����Τɤ����������Ȥ����ȡ���id�פȡ�postdate�פˤĤ��� htmlspecialchars ���̤��Ƥ��ʤ����Ǥ��롣

�������ˤ�����ȼ����ǤϤʤ����ץ����������Τ���������С���$row['id']�פ��ͤ����ͤ����Ȥ�ʤ����Ȥ��ǧ�Ǥ��������������$row['postdate']�פ��ͤ����դ�ɽ��ʸ���󤷤��Ȥ餺��HTTP�ꥯ�����Ȥ��͡�CGI���ϡˤ˰�¸���Ƥ��ʤ������ȤȤ������Ȥ��ǧ�Ǥ���Τ�������

���������Τ褦�ʳ�ǧ��Ȥ򤷤ʤ��������������ɤ��ɤ����狼��ʤ��褦�ʡ��ץ������ν����򤹤٤��Ǥʤ����������ƥ����������ˡ��ץ������γ�ȯ��ˡ���Ȥ��ơ��Ǥ�������ɽ�Ū�ʻ����ǥ����ɤ����������ǧ�Ǥ���褦�˽񤯤Τ�������ץ�����ߥ󥰤δ��ܤ����Ĥޤꡢ���Υ��������Ҥ������ơ����꤬�ʤ��Ȥ狼��褦�˽񤯤٤��Ǥ��롣�㤨�м��Τ褦�ˡ�����(D)

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    echo '<p>';
    echo htmlspecialchars('No.' . $row['id']).'<br />';
    echo htmlspecialchars('��̾:' . $row['title']).'<br />';
    echo htmlspecialchars('̾��:' . $row['name']).'<br />';
    echo htmlspecialchars('����:' . $row['postdate']).'<br />';

�����ǡ���'No.' �� '��̾:' �� '̾��:' �� '����:' �����ʸ����ޤ� htmlspecialchars ���̤��ʤ��̵�̤���ʤ����פʤɤȤ������Ȥ�ͤ��ƤϤ����ʤ������ޤɤ����������̱Ū�ץ�����ߥ��׹ͤ򤹤�Τϥץ�����࿦�ͤȤ����Ѥ����������Ȥ���

������HTML����Ϥ���Ȥ��ϡ����ν������Τ��Ф��ơ�<�ס�>�ס�&�פΥ��������׽����θ�Ƥ���׵ᤵ��Ƥ���ΤǤ��äơ�CGI���Ϥ˰�¸���Ƥ��뤫�ɤ�����̵�ط��Ǥ��롣�����ιͤ����ˡ�̵�Dz��פ��Ρ�̵�����פ��Ρ־��ǡפ��Ρ֥��˥������פ��Ρ֥��˥������󥰡פ��ΤȤ����ʺǶ�ή�ԤΡ�ȯ�ۤϽФƤ��ʤ���

HTML���Ϥ�񤯤Ȥ��ϡ��ष����������Ϥ������Ȥ��������㳰Ū�Ǥ���ȹͤ���Τ��褤�����Ȥ��С�echo ������Ū�˻��ѶػߤȤ��Ƽ��Τ褦�˽񤯤Τ�褤������������(E)

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    htmlout_tag('<p>');
    htmlout('No.' . $row["id"]);
    htmlout_tag('<br />');
    htmlout('��̾:' . $row["title"]);
    htmlout_tag('<br />');
    htmlout('̾��:' . $row["name"]);
    htmlout_tag('<br />');
    htmlout('����:' . $row["postdate"]);
    htmlout_tag('<br />');

������°����ʬ����Ϥ���Ȥ��ϼ��Τ褦�˽񤯡�

    htmlout('����ʸ��������Ϥ��Ƥ���������');
    htmlout_tag('<form>');
    htmlout_tag('<input type="text" name="strdate" value=');
    htmlout_quote($strdate);
    htmlout_tag('>');

���Ѥ����ؿ�������Ϥ��Ȥ��Ф���ʴ�����*3��

function htmlout($str) {
    echo htmlspecialchars($str, ENT_NOQUOTES);
}
function htmlout_quote($str) {
    echo '"' . htmlspecialchars($str) . '"';
}
function htmlout_tag($str) {
    echo $str;
}

�����Υ����������ȥ�����ץƥ����ȼ������Ĥޤꡢ�Ǽ��ĤؤΥ����դ�ʸ����ν񤭹��ߤ����꤬�����Ȥ�����HTTP_USER_AGENT �⥵�˥��������ʤ��Ȥ����ʤ������פȤ������Ȥ��褯�����롣��Υ���ץ륳���ɤ� User-Agent ��ä���Ȥ���

    echo 'No.'.$row['id'].'<br />' ;
    echo '��̾:'.htmlspecialchars($row['title'],ENT_QUOTES).'<br />' ;
    echo '̾��:'.htmlspecialchars($row['name'],ENT_QUOTES).'<br />' ;
    echo '����:'.$row['postdate'].'<br />' ;
    echo '�֥饦��:'.$row['useragent'].'<br />' ;

�Ȥ��������ɤ�񤭤����Ǥ���櫓����������򸫤ơ���$row['user_agent'] �⥵�˥��������ʤ��Ȥ����ʤ������פȤ������Ȥˤʤ롣�к��ޥ˥����餹��С�

HTTP_USER_AGENT�äƤΤϤ͡������¦�ǥ֥饦���򤤤��äƾ�����Ѥ��������衼���ġ���Ȥ��ȤäƤ͡�HTTP_REFERER�⵶���Ǥ������������顢User-Agent: �Ȥ� Referer: �Ȥ������ȡ�X-Forwarded-For: �� Via: ��ͳ�褹���ѿ��⥵�˥��������ʤ��Ȥ����ʤ�����衼��

�ȡ��ϥå��������Ǹ�äƤߤ��������󥹤Ǥ���櫓����������ʤ��ȤϤɤ��Ǥ⤤����(E)�ν�����(D)�ν����ʤĤޤꡢ�����ʳ��ϰ�Χ���������������פ��ƽ��Ϥ�������ˤ򤷤Ƥ���С�����ʤ��ȤϤɤ��Ǥ�褤�Τ�*4��

�ǤϤʤ��������Ǥ���(C)�Τ褦�ʥ�������񤤤Ƥ��ޤ��Τ���3�Ĺͤ����롣1���ܤϡ���̱Ū�ץ�����ߥ󥰤�ȯ�ۡ�2���ܤϡ��ѻ��ʸ��ɤ�������äƤȤ������Ȥ������������

�ޤ�����htmlspecialchars�פȤ���̾����Ĺ��������򤢤������������ޤʤ��Ȥ����ʤ���ʸ����Ϣ�뤷�Ƥ���ʸ����ʬ��ʬ�� htmlspecialchars ������ơ�����ơ�����Ƥ����ʤ��Ȥ����ʤ������줬���Ƿ��Ǵ���ʤ��ץ�����ޤ�������Ǥ�֥������ƥ��к����ʤ��ȡġġפȤ������Ȥǻ����ʤ�ɬ��˺�Ȥ��Ƥ����ȡ�ɬ�׺Ǿ��¤ξ��ˤ��� htmlspecialchars �Ƚ񤯤��Ȥˤʤ꤬������

���η�̤Ȥ��Ʋ��������뤫�Ȥ����ȡ�������֥��˥�����ϳ��פ���������ܤ򻮤ˤ���õ���Ƥ�����Ȥ⡢�����ؤ�ʥ����Ȥ������뤳�Ȥˤʤ롣

��˵󤲤�(A)�λ����ˤĤ��ơ����������ȼ������Ŧ���줿�ܤ����ԤϤ���ȿ�����뤫�⤷��ʤ�����PHP�������ʤΤǡ��ޤ��� PHP�ˤ�� HTML form�δ���Ū�ʽ����������������������ǽ餫�餽���餸�夦�� htmlspecialchars �Ȼ���Ф᤿�ΤǤϡ��ɼԤ��Ĥ��Ƥ��ʤ��ʤäƤ��ޤ����������ƥ��к�����ˡ�ϸ�Ⱦ�ǽ񤤤Ƥ���Τ����顢����Ǥ褤�Τ��ġġפȡ�

���¡�2002ǯ�ˡ�����@IT�β��⵭�����ȼ������Ŧ�����Ȥ����ط��Ԥ�������

�����μ�ݤϥ����Х����ɥ��ץꥱ�������ν��Ķ��ξҲ�����Ȥ��Ƥ���ޤ����Ȥ�λ�򤤤������ޤ��ȹ����Ǥ�

�Ȥ�����������������Ȥ����롣�ޤ�Ʊ���������οͤ��񤤤Ƥ������ҤˤĤ��ơ����������ɤ���ߤ����Ȱ��ꤵ����ɤޤ��Ƥ��ä��Ȥ�������ϤꡢSQL�λȤ�����Ҳ𤹤�ϤΥ���ץ륳���ɤ������SQL���󥸥���������ȼ����Τ���°פʽ����ˤʤäƤ��ơ��֤����������������褦��פȸ��ä����Ȥ�����Τ��������Ԥϡ��֤�����SQL�λȤ�����狼�äƤ�餦���������;ʬ�ʥ����ɤ����줿���ʤ��פȼ�ĥ���ơ�����Ū�ʽ�ľ���Ϥ��ʤ��ä������ս񤭤�ź����졢����ξϤ˥������ƥ��к��ξϤ��դ��ä��뤳�Ȥ��н褵�줿�ˤȤ������Ȥ����ä���

���Τ褦�ˡ������ɤθ����ܤ��ѻ��ˤʤ뤳�Ȥ��ץ������ã�˷����Ƥ��ơ��ä˲����ܤ����Ԥ��Ҥɤ����äƤ��뤳�Ȥ��狼�뤬�����줬�ȼ�ץ�����ޤ����������븶���ȤʤäƤ��롣

������3���ܤθ��������֥��˥������פȤ������դ��°פ�ή�Ԥꤹ���Ƥ��뤳�Ȥ������Ǥ��롣

�֥��˥������פȤ����Τϡ���̵�����פȤ�����̣�θ��դǤ��뤳�Ȥ������餫�ʤ褦�ˡ������ޤǤ�֥������ƥ��к��פȤ��Ƥ�ʸ̮�Ǥ�������ʤ�����������ȡ���CGI���ϤΡʤ˰�¸�������ѿ��ϥ��˥���������פȤ�������������ˤʤäƤ��ޤ������줬�������ץ�����ߥ󥰥���������Ĺ���ƺ��롣

�����������Ƥ��ѿ��򥨥��������оݤȤ��褬���ܤǤ��뤷���ѿ���������ʤ��Ƽ����Τ򥨥������פ��оݤȤ���٤��ʤΤˡ��֥��˥������פȤ������դǶ��餬�Ԥ��Ƥ���ȡ����ιͤ����˻�뵡�񤬻�����Ƥ��ޤ���

�����顢�����˥������������פʤΤ���

�����ܤ����ԤˤȤäơ��ѻ��ʥ����ɤϤ����Ǥ����򤱤����Ȥ������������������Τ��Ȥ�֥��˥������פȤ������դ����򤷤Ƥ���ȡ��ܼ�Ū��ɬ�פʽ����Ȥ��ƤǤϤʤ����֤����ޤǥ������ƥ��к��Ȥ���ɬ�פʤ���פȤ������ä�����򤷤Ƥ��ޤ������������η�̡��֥���ץ륳���ɤǤ��ȼ�ʤޤޡ���β���ǥ������ƥ��к��Ȥ��ƶ�����פȤ��������ˤʤäƤ��ޤ���

���μ�ν��������������ƥ��к������˸����ܼ�Ū��ɬ�פʽ�����SQLʸ�������륳���ɤǤϸ������ɬ�פʽ����Ǥ��뤷��HTML����Ϥ��륳���ɤǤϸ������ɬ�פʽ����ˤǤ��뤳�Ȥϡ����Ȥ��С����λ���򸫤�����餫�Ǥ�������

  • ���ݡ���&�����ӥ� FAQ�Ҳ�, ʸ���ֹ� 763, �����ӥå��ӥ��ͥ����󥵥륿���

    [Q]
    ��ư���˲����Υ��顼��ȯ�����롣
    �ֹ�1:��XXXX�Ǥζ᤯�������ʹ�ʸ������ޤ���
    ʸ�����)�Ǥ����������䤬�Ĥ��Ƥ��ޤ�����
    state:37000��Native:170
    state:37000��Native:105��

    ��ʸ���ֹ��763 �ڹ�������2003/08/12
    ���оݾ��ʡ�����21���꡼�������ʡ�����2000���꡼��������


    [A]
    ��������ͳ

    ����ԥ塼����̾�ˡ֡� ���󥰥륯�����ơ������פ��ޤޤ�Ƥ������ȯ�����ޤ���

    �������н���ˡ

    ����ԥ塼����̾�ˡ֡� ���󥰥륯�����ơ������פ���Ѥ��ʤ��褦�ˤ��Ʋ�������

    ����

����ϥ��������ư�����եȥ������ΥХ����äʤΤǡ��������ƥ��ȼ����Ȥϴط����ʤ����ᡢ���Τ褦���н���ˡ�����⤵��Ƥ���Τ����������Τ褦�ˡ��������ƥ��Ȥ�̵�ط��ʤȤ����Ǥ⡢SQLʸ��������Ȥ��ˡ�'�פǰϤ����˼��ʾ�ξ��ϡ֥���ԥ塼��̾�סˤ�������Ȥ��ˤϡ�����ɾ�������Ρ�'�פ򥨥������פ�������ϡ����������Τ��ȤȤ���ɬ�פʤΤ�������ϡ������Ȥ���SQL�λȤ�������⤹����̤ǡ����ֺǽ��á������٤����ȤǤ��롣�������ƥ��Ȥ�������Ф��ޤǤ�ʤ���

SQLʸ��HTML�����Ǥʤ���ʸˡ�����ʸ������̤�ʸ����Ϣ�����������Ȥ��ˡ��������ä�������ɬ�פȤʤ뤳�Ȥ򡢥ץ�����ߥ󥰰��̤򶵤���Ȥ����θ������Ƥ����٤����⤷��ʤ���

11��22��������������Ի����ǤϤʤ���ȯ�Ի����Ǥβ�����פ���Ƚ��������Ϣ�ܵ����Ǥ⡢���˥������Ȥ������դ��Ǥ���Ƥ����ͻҤ����������Ƥ�����

�����奢�ץ�����ߥ󥰤θ³�

Web���ץꥱ���������ȼ��������߽Ф��ʤ�����ˡ�Web���ץꥱ�������ȯ�Ԥδ֤Ǥϥ����奢�ץ�����ߥ󥰤Ȥ�����ǰ����Ʃ���Ƥ��ä������γ�ǰ�ˤϡ������奢�ʥץ�������������뤿��Τ������������ޤޤ�Ƥ��뤬���褯�����뤳�Ȥ��桼������������ϥǡ����򤽤Τޤޥץ������˼����Ϥ��ΤǤϤʤ�������ɬ��������ȡʥ��˥������󥰡ˤ�Ԥ��Ȥ����ͤ����Ǥ�����

�㤨�С��ץ������䥳�ޥ�ɤǰ�̣����ĥ᥿����饯���ʥ᥿ʸ����\��[��]��|��$��*�ʤɡˤ����Ϥ�ػߤ�������ɽ���ˤ�����ʸ����Υѥ��������ꤹ�뤳�Ȥˤ�ä����ϥǡ����ξ�����Ԥ���

Web���ץꥱ�������ե��������������ɬ���� ��1�� ��̩����˹�ˡŪ�˶�Ť���Web���ץꥱ����������, @IT, 2005ǯ8��17��

�����奢�ץ�����ߥ󥰤������뤫����㤨�Ƥ���Τ����顢�֥����奢�ץ�����ߥ󥰤θ³��פʤɤȤ������ä�����ˤ��ɤ��夤�Ƥ��롣�֥��˥������פȤ�����ǰ�Ϲ���Ի�����ȯ�ۤǤ��ꡢ����Ի������к���ͤ��Ƥ���ȡ�����Ի����ǤϤʤ���ȯ�Ի����Ǥβ�����פǼ������褦�ʡ����ä��к���ˡ��Ƴ���Ƥ��ޤ����ͤʤ���

��˵󤲤�(B)�λ����ˤ⡢�֥��˥������פȤ���ή�Ը�γ��������롣

�ִ�����ʸ�������������פȤ���ȯ�ۤ򤹤뤳�Ȥ��ְ㤤�ʤΤ������֥��˥������פȤ������դ���ϡֺ���פȤ����Ѵ��פȤ����к���Ϣ�ۤ����䤹����

�ѥ�̾�������뤳�Ȥ����ꤷ���ѥ�᥿�ˡ�../�פ��..\�פ��ޤޤ�Ƥ����顢����Ȥ��Ѵ��򤹤�ΤǤϤʤ������顼�Ȥ����㳰�������ƽ�λ����Ȥ����Τ�������Τ��Υץ�������������ư�������*5��

�֥��˥���������פȤ����к���ȯ�ۤˤϡ������Ѱդ˥ץ������ε�ư���Ѥ��ƤϤ����ʤ��פȤ����طʤ�����褦�˻פ��롣�Ĥޤꡢ���˲�Ư��Υ����ƥ���Ф����ȼ���������Ԥä��Ȥ����ȼ��������Ĥ���ȡ��ץ�������¾����ʬ�˱ƶ���Ϳ���ʤ��褦�ˡ��Ǿ��¤��ѹ����ȼ������ӽ��������ȹͤ�����������֡����ΤȤ��ϥץ�������λ�פʤɤȤ����礽�줿�ץ������ΰ�̣���ѹ����к������»ܤ���٤��Ǥʤ��Ȥ����ͤ����������롣���Τ褦�ʹͤ��˴�Ť��ȡ�CGI�������ʳ��Ǻ���������Ѵ�����Ȥ������Ȥˤʤ롣���줬�������Ρ֥��˥������פȤ������դ��ä��Ϥ�������ΰ��Ѥˤ��ä���

�桼������������ϥǡ����򤽤Τޤޥץ������˼����Ϥ��ΤǤϤʤ�������ɬ��������ȡʥ��˥������󥰡ˤ�Ԥ��Ȥ����ͤ����Ǥ��롣

Web���ץꥱ�������ե��������������ɬ���� ��1�� ��̩����˹�ˡŪ�˶�Ť���Web���ץꥱ����������, @IT, 2005ǯ8��17��

�Ȥ������Ҥϡ��ޤ��ˤ��������֥��˥������פ�ȯ�ۤǽ񤫤�Ƥ��롣

��¸�Υ����ƥ�˱��޼����Ȥ��Ƥ��Τ褦���к��򤹤���̤ǤϤ���Ǥ�褤���֥��˥���������פȸ��ä������������������줫�鿷���˳�ȯ���륷���ƥ�ˤ����륻���奢�ץ�����ߥ󥰤���Ȥ��ˡ��֥��˥������פȤ������ΤϤ⤦��᤿��ɤ�����

��äȤ⡢��������ȼ��������뤫�⤷��ʤ����Ȥ����ꤷ�Ƥ��ݸ��Ȥ��ơ�CGI�������ʳ��ǥѥ�᥿����������ʥ��˥���������ˤ��Ȥˤϻ��������Ȥ��ˡ����楳���ɤϥ��˥��������Ƥ��ޤ����Ȥ�Ƥ���������褤���⤷��ʤ��ʿ��˲��ԥ����ɤ����Ϥ�ɬ�פȤ�����ʬ�Ǥϡ����ԥ����ɤϺ��ʤ����ˡ�����������Ϥ���ʤΤǤ��äơ������㺮���ˤ��ƤϤ����ʤ�����������������ץ��������ˡ + ������Τ�����ݸ��Ȥ��ƤΥ��˥����������פȤ����������˿�������٤��Ǥ��롣

�֥��˥������פȤ����������������Ѹ�Ǥ��뤫�Τ褦�ʹ���ɺ�������Υ������ʲ����줿͢����ϡ��ȤƤ�°פ˻Ȥ��ư��ٻȤ��Ȥ����ʤ������Τ褦�ʸ��դʤΤǡ������奢�ץ�����ߥ󥰤��ܼ������򤷤Ƥ��ʤ��ǿ��к����ʤĤޤꡢ�ȼ��������ηи��Ϥ��äƤⳫȯ�ԤȤ��Ƥηи����ʤ��褦�ʿ͡ˤǤ⡢�֤��줵�������˥��������Ƥʤ��Τ������ʤ������͡��פȡ����Τ��Ǹ�äƤߤ��뤳�Ȥ��Ǥ��Ƥ��ޤ���

������󡢡֥��˥������פ�֥��������ספ˸���������ʤɤȤ����Τ�Ķ��ְ㤤�����ºݡ��ɤ����ä����ǡ��ѥ�̾�ѥ�᥿�Ρ�../�ץ����å����к�����⤹��ʸ��ǡ�

��../�פ��..%2F�פ˥��������פ��ޤ��礦��

�ʤɤȤ�����Τ򸫤����������뤬��Ķ��ְ㤤����

�Ȥꤢ�����֥��˥������פ�֥��������ספ���ˤ��ʤ��褦�ˤ��Ƥߤ���褤�����˥������Ȥ������դ�Ȥ鷺�˼�ʬ�������������Ȥ�ɽ�����褦�Ȥ��Ƥߤ��餤�����������������뤳�Ȥκ��񤫤�ƨ���褦�Ȥ���ʡ��Ȥ������Ȥ���

�� ASP�Ȥ�JSP�Ȥ�PHP�Ȥ�ERB�Ȥ����դ��ä���褫�ä��Τ�

ERB��Web�ڡ����˻Ȥ��Ȥ��������������ȥ�����ץƥ����ȼ����Τʤ��褦�˽񤯤ˤϡ� ��<%=h ... %> �פȤ�����ˡ��Ȥäơ����ʤɤΤ褦�˽񤯡�

No. <%= row["id"] %><br /> ��̾: <%=h row["title"] %><br /> ̾��: <%=h row["name"] %><br /> ����: <%= row["postdate"] %><br />

�����(C)�Υץ��������ERB���֤���������Τ���

��h�פȤ����Τϡ�html_escape�פȤ����᥽�åɤ���̾�Ȥ����������Ƥ��ꡢ���������׽������ѻ��ˤʤ�ʤ��褦�ˤ��뤳�Ȥ�ռ������߷פ���Ƥ��뤳�Ȥ����������롣

���Τ褦�ˤ��ä��ꤷ�������򸫤�ȡ���title�פȡ�name�פΤȤ���������<%=h ... %>�פȤ���Τ��Լ����ǡ�������<%=h ... %>�פˤ��Ƥ��ޤ��Τ��������Ȥ������������Ƥ����������

��������ȡ���h���դ��ȡ�h��̵����դˤ�����褫�ä��ΤˤȻפ��Ƥ��롣

<%= ... %> �γ�����Ū��HTML���ҤǤ���Τ��Ф���<%= ... %> ����ʬ��ưŪ�ʤ�Τ������ߤ����Ȥ��˻Ȥ���ưŪ�ʤ�Τ������ߤ����Ȥ��Ȥ����Τϡ����ΤۤȤ�ɤϡ��������Ȥ������ߤ����櫓�ǤϤʤ����������Ȥ���ȡ��ǥե���Ȥ�����HTML���������פ��Ƥ��ޤ��Τ������ǤϤʤ������������դˡ�������ɤ����Ƥ�ưŪ�������ߤ����Ȥ��� <%=h ... %> �Ƚ������褫�ä��ΤǤϤʤ�������̾���ϡ�h�װʳ��ˤ��������褵����������

���Τ褦�ˤ��ƹͤ���ȡ����⤽�⡢ASP����Ϥޤäơ�JSP��PHP��ERB�ȼ����Ѥ���Ƥ�����HTML��˥ץ�������������Ȥ������λ��Ȥߤ����ǽ餫��ǥե���Ȥǥ��������פ����褦�˺���Ƥ�����褫�ä��ΤˡġĤȻפ��Ƥ��롢����ʺ������κ�����

*1 PHP������ǡ�magic_quotes_gpc = On�פˤ��Ƥ���Τǡ�̵�̤ʡ�\�פ�����Ƥ��롣

*2 ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½p.67��CSRF�к��ʤɤˤ����꤬���롣���к�4�פȤ��ơ�

�����ԥ��å������γƼ�ǡ����μ����Ϥ��ˡ�$_GET �� $_POST �ǤϤʤ���$_SESSION �����Ѥ��롣

�Ȥ�����ˡ���󤲤��Ƥ��ơ����줬��̿���к��Τ褦�˽񤫤�Ƥ��뤬��������к��ˤʤ�ʤ���4��27���������˽񤤤Ƥ����褦�ˡ�ɬ�פʥѥ�᥿�ͤ����å�����ѿ��˥��åȤ���Ƥ���Ȥ������Ȥϡ����Τɤ����Υڡ����Ǥ����ͤ򥻥åȤ���ꥯ�����Ȥ�����Ϥ��ǡ����Υꥯ�����Ȥ�CSRF���⤷����˼¹ԥڡ����ˤ�CSRF���⤹��褦�ʻųݤ����ˤ��Ƥ��ޤ���

�ޤ���4-1-7���SSL�θ��̡פ�p.125�ε��Ҥˡ��ѥ��å���İ���줿�Ȥ�������ˤĤ��ơ�

Web���ץꥱ���������뤿��ˡ����Υ�٥�ǤΥ���å��󥰤β�ǽ���ޤǹͤ��ʤ���Фʤ�ʤ��ʤ�ƥʥ󥻥󥹤Ǥ���*15

�դˡ�SSL�����Ѥ������ġ����å����ˡ�SSL�ʳ��ǤϤ��Ȥꤷ�ʤ��פȤ���°����Ĥ��Ƥ����Ȥ��Ƥ⡢XSS�����ɤ��ޤ���

�Ƚ񤫤�Ƥ��ơ�������������Τ�����äȰ�̣�����ˤʤäƤ��롣

�⤦�ҤȤ���������󤲤�ȡ�p.228�Υ����ǡ�magic_quotes_gpc�פˤĤ��ơ�

magic_quotes_gpc��ǽ�ˤĤ��ƤϤ��������Ѥ�����Ƚ�⶯�������������Off�Ȥ��٤��Ƚ񤫤줿ʸ����¿��¸�ߤ��ޤ������ץ�����ޡ��Υ������٥뤬���ѤǤ��ʤ�Web���ץꥱ�����������Ѥ��륱�����Ǥϡ�magic_quotes_gpc��On�ˤ����������ۤ�ε��������٤ϰ����ȸ����ޤ���

�Ƚ񤫤�Ƥ��뤬��magic_quotes_gpc��On�ˤ���ȡ�CGI�ѥ�᥿��Shift_JIS���Ϥ��줿�Ȥ���ʸ��������ȯ�����Ƥ��ޤ����ᡢ���줬����ˤʤ�Ȥ������꤬�����Ƥ���褦�������Τ��ᡢ�󤤤��Ȥˡ�magic_quotes_gpc ��On��PHP�Ķ��Ǥ�ư���褦�ʥץ���������ƥ��˥å��ȾΤ��ơ�PHP�ץ���������Ƭ�ǡ�CGI�ѥ�᥿���������Ф��ơ�stripcslashes�פ򤫤���Ȥ������������פ���������PHP�ץ�����ޤδ֤����֤ȤʤäƤ���褦���ʤ����ܤ˽񤫤�Ƥ���櫓�ǤϤʤ��ˡ�magic_quotes_gpc = On ������ stripcslashes �����ꡢ�ޤ� htmlspecialchars ���Ƥߤ���ȡ��ۤ�ȱ���PHP�����ɤ��������� Google�Ǹ��Ĥ��롣magic_quotes_gpc �� Off ��Ű�줬�褤��������

���줫�顢p.197�Ρ�7-1 �����������ɤ��긵�ˤʤ��Ȥ����ȼ����θ��Ĥ���7-1-5 �ºݤ˹��⤷�Ƥߤ�פǡ�

�����ΰ��դ��륯��å��󥰤Ǥ���ʤ顢�������ץ�������ͥåȥ��ե������Ѥ���ʤɤΥ����������α��ä�ɬ�פǤ��������μ��ʤˤĤ��Ƥ��ܽ���ϰϳ��Ǥ���

�ʤɤȽ񤫤�Ƥ���Τ����ʤ����������������԰٤ˤ�����ʤ����Ȥ��ο��Ǥ����������ƤϤ����ʤ��Τˡ�����Ǥϴ��㤤�����ɼԤ⤤��ΤǤϤʤ�����

�ȤϤ����������ܤǤϡ�session.use_trans_sid �� off �ˤ��뤳�Ȥ䡢session.use_only_cookie = 1 �Ȥ��뤳�ȡ�session.auto_start �� off �ˤ��뤳�Ȥʤɡ�PHP��ͭ�δ�������򤹤뤿��ν��פ�����ˤĤ��ƽ񤫤�Ƥ���Ȥ������ɤ����ʤ������Τ���������Ƥϰʲ��Υ����ȤǤ��ɤ�롣

*3 ï¿½ï¿½ï¿½ï¿½ï¿½È¯Å¸ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½È¡ï¿½HTML�����Ǥ�����Ҿ����ɲä������������ƹ������Ƥ����᥽�åɤ��Ѱդ���Ȥ����������˹Ԥ��夯������ꤹ����ȡ������ä��ѻ��ˤʤ롢���뤤�Ͻ������Ť��ʤ�ʤɤ���ͳ�ǡ��Ȥ��ʤ��ʤäƤ��ޤ����ɤ��ޤǹ�¤�����줿��ˡ��Ȥ��Τ����Ǥ�Х�󥹤��Ȥ�Ƥ��뤫�Ȥ������Ȥˤʤ롣

*4 ï¿½ï¿½ï¿½Ò¡ï¿½PHP�����С��ƥ��ε�ˡ��������ɸ�μºݡפˤ����Ƥ⡢p.48�ˡ֥��å���ɽ���Υ��˥������פȤ�������ब���롣cookie���ͤ�HTML���Ϥ���Ȥ��ˡ�<�ס�>�פΥ��������פ�ɬ�פ��Ȥ������Ȥ���������Ƥ��ơ���XSS�ȼ���������Сġĥ��å���������ǽ�Ǥ��뤿��ġ�������Τ���ġġפȤ��ƥ��������פ��륳���ɤò¼¨¤ï¿½ï¿½Æ¤ï¿½ï¿½ë¤¬ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ã¤ï¿½ï¿½ï¿½ï¿½È¤Ï¡ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½×¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ê¥ï¿½ï¿½ï¿½ï¿½Ç¥ï¿½ï¿½ó¥°¤ò¤·¤Æ¤ï¿½ï¿½ï¿½Ð¹Í¤ï¿½ï¿½ï¿½Þ¤Ç¤ï¿½Ê¤ï¿½ï¿½ï¿½

*5 ï¿½ï¿½ï¿½Î½ï¿½ï¿½Ò¤Ë¤Ï¡ï¿½Â³ï¿½ï¿½ï¿½Ú¡ï¿½ï¿½ï¿½ï¿½Ç¡ï¿½

�ޤ�����̥ǥ��쥯�ȥ���꤬���ä��������������ϤȤ��ƽ�λ������ˡ�⤢��ޤ���

����ͦ, PHP�����Υĥ� �����奢�ץ�����ߥ���, ��ŷ��, p.159

�Ȥ�����­���񤫤�ƤϤ��뤬�������餬����ʤ��٤����ȤȤϽ񤫤�Ƥ��ʤ���
������TrackBacks(��82��) [TrackBack URL: http://takagi-hiromitsu.jp/diary/tb.rb/20051227]

�٤Υ��ե����οͤ�����ʤ��Ȥ�񤤤Ƥ��ޤ���: ���ڹ�������������� - �ץ�����ߥ󥰲�����Ҥ��ȼ�����ɤ����뤫, �֥��˥����������ʥ����ڡ���פȤϲ���, ASP�Ȥ�JSP�Ȥ�PHP�Ȥ�ERB�Ȥ����դ�.. �ʤ�ۤɤ͡��֥��˥����������ʥ����ڡ���פȤϤ���������̣..

�֥����������оΡע��֥����������оݡ�

��GGI�ע���CGI��

�ǿͤ�����ʤ��Ƚ񤯤Τ����Ѷ��̤ʤΤǤ����������� �Ȥꤢ�����֥��˥������פ�֥��������ספ���ˤ��ʤ��褦�ˤ��Ƥߤ���褤�����˥������Ȥ������դ�Ȥ鷺�˼�ʬ�������������Ȥ�ɽ�����褦�Ȥ��Ƥߤ��餤�����������������뤳�Ȥκ��񤫤�ƨ���褦�Ȥ���ʡ���..

27���ΤҤ��ߤ������������򤤡�������¿���ˤ錄��ʤ��餽�줾����̯�ˤĤʤ��äƤ���((�����̣�ޤȤޤ꤬�ʤ��Ȥ⤤���뤬�ޤȤ�������ʳ������ͤ��������餷�礦���ʤ�����))�����ͤ�������줿���ʲ������ͤ�����⡣�ͤ�Web�ץ�����ߥ󥰤ˤĤ��ƤϤۤȤ���ǿ�..

���ڻ�Ρ֥��˥����������ʥ����ڡ���פƤΤ�����ä����򤤿ȤˤĤޤ�����ä���

���������˥������Ȥ����ͤ������Τ��ְ�äƤ���Ȥ����ո��򸫤ޤ����� ��⥵�˥������ȸ����ͤ�����Nagative Security�ʶػ߻�����������ͤ����ˤ����ȯ�ۤʤΤǡ�Positive Security�ʵ��Ĥ��������������ͤ����ˤǥץ���������٤��ȹͤ��Ƥ��ޤ�������..

2�����ͤ�򸫤Ƥ����� ��PHP�۲���ͤ�����Ϥ����˽񤭹��ߤ䤬��part14 http://pc8.2ch.net/test/read.cgi/php/1134868212/ XSS�����θ���Ƥ��ʤ��䤫�餬�ޤ��ޤ����븽�¡�

HTML�ѤΥƥ�ץ졼�Ȥˤ����ƥ��������פ��줿���֤��ǥե���ȤǤ���٤����Ȥ����ΤϤ����̤������ERB�ϡʾ��ʤ��Ȥ������ϡ����ѥƥ����Ƚ����ѤǤ��ä�HTML�Υ��������׾��֥ǥե��Ȥ����ΤϤ���äȰ㤦���Ǥ����������ץ������Ϥɡ��桼��Τ��Ȥ�����[http://jakarta...

���ڤ��������
���ץ�����ߥ󥰲�����Ҥ��ȼ�����ɤ����뤫
�������㤤�������ΰ�����ȼ��������ɥ�ӥ塼�����Ѥ���1��
�����Ф餯����������Ƚ񤱤����ˤʤ�



��ƣ��

http://takagi-hiromitsu.jp/diary/20051227.html


���ä���autoincrement���Ƥ�������Ǥο��ͤ����äƤ���Ȥ��Ƥ�
��äƤ����Ȥ������Ȥ͡�

����ȿ�����٤����ɡ� ���ڹ�������������� - �ץ�����ߥ󥰲�����Ҥ��ȼ�����ɤ����뤫, �֥��˥����������ʥ����ڡ���פȤϲ���, ASP�Ȥ�JSP�Ȥ�PHP�Ȥ�ERB�Ȥ����դ�.. �Ƕ�Υץ�����������ϡ�ʸ������ϵ���������Ȥ����ͤ������ʤ��Τ��ʡ��񤤤Ƥ�ͤ�..

������� (PHP5)�� &lt;?php foreach(simplexml_load_file('http://www.flickr.com/services/feeds/photos_public.gne')->entry as $it) echo $it->content ?&gt; �����ޤ��󤹤��ޤ��� via 5-second RSS parser�� ��ȯ��ɤǤ� simple_xml...

EUC�����������PHP�ǤɤΤ褦�˽������뤫��Ĵ�٤Ƥ��ơ�1ǯ���˼�ʬ�ǽ񤤤�

PHP�Υ������ƥ��ˤĤ���Ĵ�٤Ƥ����顢���Τ褦�������ȯ�����ޤ����� [http://takagi-hiromitsu.jp/diary/20051227.html �ץ�����ߥ󥰲�����Ҥ��ȼ�����ɤ����뤫] [http://xoops.peak.ne.jp/md/news/article.php?page=article&storyid=80&easiestml_lang=xlang%..

������֥��˥������פǤ��� �Ż��Ǹ���ʸ����ζ�Ĵɽ��������Google�Υ���å���ɽ���ߤ����ʤ�ġˤ��äƤ��ΤǤ��������������̵�뤷�Ƹ���������ͤ��ä��ΤǶ�Ĵ�Ѥ���������span�������������ޤ�ƶ�Ĵ���Ƥ��ޤ��Ȥ����Х����ꤳ��Ǥ��ޤ���HTML�ü�ʸ..

�Ĥ�Ĥ����ʸ���Ϣ�ͤ뤳�Υ֥�����ï���ܤˤ�α�ޤäƤ��ʤ��������ȻפäƤ����顢�������ƤΥ����Ȥ򤤤������ޤ�����(���ء���)�Ρ�
���Ƥϡ������񤤤�php�Ǥ������ͤ�...

����

<��������(2005ǯ12��25��) ��������(2005ǯ12��31��)> �ǿ� �Խ�

�Ƕ�Υ����ȥ�

2024ǯ12��07��

2024ǯ12��02��

2024ǯ11��24��

2024ǯ11��11��

2024ǯ07��28��

2024ǯ07��27��

2024ǯ07��07��

2024ǯ04��07��

2024ǯ04��01��

2024ǯ03��23��

2024ǯ03��19��

2024ǯ03��16��

2024ǯ03��13��

2024ǯ03��11��

2023ǯ03��27��

2022ǯ12��30��

2022ǯ12��25��

2022ǯ06��09��

2022ǯ04��01��

2022ǯ01��19��

2021ǯ12��26��

2021ǯ10��06��

2021ǯ08��23��

2021ǯ07��12��

2020ǯ09��14��

2020ǯ08��01��

2019ǯ10��05��

2019ǯ08��03��

2019ǯ07��08��

2019ǯ06��25��

2019ǯ06��09��

2019ǯ05��19��

2019ǯ05��12��

2019ǯ03��19��

2019ǯ03��16��

2019ǯ03��09��

2019ǯ03��07��

2019ǯ02��19��

2019ǯ02��11��

2018ǯ12��26��

2018ǯ10��31��

2018ǯ06��17��

2018ǯ06��10��

2018ǯ05��19��

2018ǯ05��04��

2018ǯ03��07��

2017ǯ12��29��

2017ǯ10��29��

2017ǯ10��22��

2017ǯ07��22��

2017ǯ06��04��

2017ǯ05��13��

2017ǯ05��05��

2017ǯ04��08��

2017ǯ03��10��

2017ǯ03��05��

2017ǯ02��18��

2017ǯ01��08��

2017ǯ01��04��

2016ǯ12��30��

2016ǯ12��04��

2016ǯ11��29��

2016ǯ11��23��

2016ǯ11��05��

2016ǯ10��25��

2016ǯ10��10��

2016ǯ08��23��

2016ǯ07��23��

2016ǯ07��16��

2016ǯ07��02��

2016ǯ06��12��

2016ǯ06��03��

2016ǯ04��23��

2016ǯ04��06��

2016ǯ03��27��

2016ǯ03��14��

2016ǯ03��06��

2016ǯ02��24��

2016ǯ02��20��

2016ǯ02��11��

2016ǯ02��05��

2016ǯ01��31��

2015ǯ12��12��

2015ǯ12��06��

2015ǯ11��23��

2015ǯ11��21��

2015ǯ11��07��

2015ǯ10��20��

2015ǯ07��02��

2015ǯ06��14��

2015ǯ03��15��

2015ǯ03��10��

2015ǯ03��08��

2015ǯ01��05��

2014ǯ12��27��

2014ǯ11��12��

2014ǯ09��07��

2014ǯ07��18��

2014ǯ04��23��

2014ǯ04��22��

2000|01|
2003|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|05|06|07|08|09|10|11|12|
2012|02|03|04|05|06|07|08|09|
2013|01|02|03|04|05|06|07|
2014|01|04|07|09|11|12|
2015|01|03|06|07|10|11|12|
2016|01|02|03|04|06|07|08|10|11|12|
2017|01|02|03|04|05|06|07|10|12|
2018|03|05|06|10|12|
2019|02|03|05|06|07|08|10|
2020|08|09|
2021|07|08|10|12|
2022|01|04|06|12|
2023|03|
2024|03|04|07|11|12|
<��������(2005ǯ12��25��) ��������(2005ǯ12��31��)> �ǿ� �Խ�