�K�؂ȃG�X�P�[�v�����ŃN���X�T�C�g�X�N���v�e�B���O�ɔ������FStruts�ō��Z�L���AWeb�A�v���P�[�V�����i1�j�i1/3 �y�[�W�j

» 2006�N03��23�� 00��00�� ���J
[�����^�l�C�O�䕨�Y�Z�L���A�f�B���N�V�����������]

���̋L���͉������ł��B����o�^�i�����j����ƑS�Ă������������܂��B

�@Web�A�v���P�[�V�����̃Z�L�����e�B�z�[�������ڂ𗁂т����Ƃ���A�Z�L�����e�B���ӎ������J���̕K�v�������܂��Ă��Ă���B����̗���Ƃ��āA�Z�L�����e�B�㖞�����ׂ����ڂ��v����`�̒i�K����g�ݍ��܂��P�[�X�������Ă������Ƃ��\�z����邪�A���ۂ̊J������ɂ����Ă̓Z�L�����e�B�z�[�����ӂ������߂̎������@��������Ȃ��Ƃ������������̂ł͂Ȃ����낤���B

�@�����������J���҂̕��S�������ł��y�����邱�Ƃ��ł���悤�ɁA�{�A�ڂł�Java�ɂ�����Web�A�v���P�[�V�����J�����ɍł��悭���p����Ă���Struts�t���[�����[�N�̎����ɓ��ݍ���ŁA�Z�L�����e�B�㒍�ӂ��ׂ��|�C���g��������Ă��������B�Ȃ��A�{�A�ڂł�Struts 1.2.8��ΏۂƂ��ĉ�����s���Ă������A���ł�Struts�𗘗p����Web�A�v���P�[�V�����J�����s���Ă���J���҂��^�[�Q�b�g�Ƃ��Ă��邽�߁AStruts�̎g�p���@�A�e�@�\�̏ڍׂȐ����Ȃǂ͊�������B

�y�Q�l�A�ڋL���z
Web�V�X�e���̃Z�L�����e�B�v���i���}�l�W�����g�j
Struts���g��Web�A�v���P�[�V�����\�z�p�iJava Solution�t�H�[�����j


�@����́A�N���X�T�C�g�X�N���v�e�B���O�iCross Site Scripting�FXSS�j�̐Ǝ㐫�Ɋւ����{�I�Ȏ�����̒��ӓ_��������Ă������B�ڍׂɂ‚��Ắu�N���X�T�C�g�X�N���v�e�B���O�΍�̊�{�v�ɂ�����������Q�Ƃ��Ă��������Ƃ��āA�Ȍ��ɏq�ׂ�ƃN���X�T�C�g�X�N���v�e�B���O�Ƃ̓��[�U�[�̓��͒l����ɓ��I��HTTP���X�|���X�𐶐�����A�v���P�[�V�����ɂ����āA���͒l�Ƃ��ēn���ꂽ�X�N���v�g�R�[�h��Web�u���E�U��œ��삷�邱�ƂɋN������Ǝ㐫�̂��Ƃł���B

�@���̐Ǝ㐫���甭�������Q�́A

  • �X�N���v�g���T�C�g���܂����邱�Ƃ�Cookie�����܂�Ă��܂�
  • VBScript�ɂ�胍�[�J���̃t�@�C���𑀍삳��Ă��܂�
  • HTML�^�O�����͒l�ɓn����邱�ƂŃy�[�W�������񂳂�Ă��܂�

�Ȃǂ��܂��܂ł���B�΍�̊�{�ƂȂ�̂́AHTML�G���R�[�h�AURL�G���R�[�h�ƌĂ΂��G�X�P�[�v������K�؂ɍs�����Ƃł���B

bean:write�^�O���g���ăG�X�P�[�v������K�؂ɍs��

�@�N���X�T�C�g�X�N���v�e�B���O�̖��́AHTML���ꕶ�����G�X�P�[�v�����đ΍􂷂邱�Ƃ���{�ł���B�G�X�P�[�v���K�v��HTML��̓��ꕶ���Ƃ́A

�u<�v�u>�v�u&�v�u"�v�u'�v

�Ȃǂł���B���I�ȃp�����[�^��HTML�ɏo�͂���ꍇ�ɂ́A���������ȈӖ��������Ȃ�������ɕϊ�����HTML�G���R�[�h�������K�{�ƂȂ�B

�@Struts���g�p���ē��I�ȃp�����[�^�������ꍇ�ɂ́AView�R���|�[�l���g�ł���Struts�J�X�^���^�O���C�u�������g�p���邱�Ƃ��������낤�BStruts�J�X�^���^�O���C�u�������g�p����ۂ�HTML�G���R�[�h������K�؂ɍs���ɂ́A�ǂ̂悤�Ȓ��ӂ��K�v�ƂȂ邾�낤���B��\�I�ȃJ�X�^���^�O�ł���bean:write�^�O���g�p�����ۂ̓�������Ȃ���m�F���Ă������B

�@�܂��A���͂��ꂽ�R�����g��\�����邾���̒P����Web�A�v���P�[�V�������쐬���Ă݂�B

<%@page contentType="text/html; charset=Shift-JIS" pageEncoding="Shift_JIS" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<html:html>
<head>
</head>
�@<body>
�@<html:form action="BeanWrite.do">
�@�@�R�����g����͂��Ă��������B
�@�@<html:text property="comment" /><br>
�@�@<br>
�@�@���͂��ꂽ�R�����g�F
�@�@<bean:write name="TestForm" property="comment" /><br>
�@�@<html:submit value="���M"/>
�@</html:form>
�@</body>
</html:html>
beanWrite.jsp

�@�쐬����Web�A�v���P�[�V�����ɑ΂��A�X�N���v�g�Ƃ��ē��삷��l����͂��đ��M�{�^�����������Ƃ���A�ȉ��̂悤�ȉ�ʂ��\�����ꂽ�B

1@XNvgƂē삷l ���1�@�X�N���v�g�Ƃ��ē��삷��l�����

�@�X�N���v�g�͓��삹���A�u<script>alert('XSS')</script>�v�Ƃ����l�����̂܂܏o�͂���Ă���BbeanWrite.jsp���HTML�G���R�[�h�Ɋւ�����ʂȋL�ڂ͂��Ă��Ȃ����A���1��HTML�\�[�X�͈ȉ��̂悤�ɂȂ��Ă���A�����I�ɉ��炩�̏������s���Ă��邱�Ƃ͊ԈႢ�Ȃ����낤�B

<html>
<head>
</head>
�@ <body>
�@ <form name="TestForm" method="post" action="/WebAppSec/BeanWrite.do">
�@�@ �R�����g����͂��Ă��������B
�@�@ <input type="text" name="comment" size="50" value="&lt;script&gt;alert(&#39;XSS&#39;)&lt;/script&gt;"><br>
�@�@ <br>
�@�@ ���͂��ꂽ�R�����g�F
�@�@ &lt;script&gt;alert(&#39;XSS&#39;)&lt;/script&gt;
�@�@ <br>
�@�@ <input type="submit" value="���M">
�@ </form>
�@ </body>
</html>
���1��HTML�\�[�X

�@�@�@�@�@�@ 1|2|3 ���̃y�[�W��

Copyright © ITmedia, Inc. All Rights Reserved.

'; if( !this.isSubscription ) { this.insertTarget = document.querySelector('#cmsBody .subscription') || document.querySelector('#cmsBody .inner'); } }; BodyAdIMSWithCCE.prototype = Object.create(BodyAdContent.prototype); BodyAdIMSWithCCE.prototype.activate = function () { refreshGam('InArtSpecialLink'); } // global reference window.itm = itm; //entry point BodyAdEventBase.polyfill(); const bodyAdManager = BodyAdManager.getInstance(); bodyAdManager.addEventListener(BodyAdManager.EVENTS.READY, function (ev) { bodyAdManager.loadAdvertise(); }); bodyAdManager.init(); })();
�X�|���T�[����̂��m�点PR

���ڂ̃e�[�}

4AI by IT - AIAAA
Microsoft  WindowsőO2025
AI for GWjAO
[R[h^m[R[h Zg by IT - ITGWjArWlX̒SŊ􂷂gD
Cloud Native Central by IT - XP[uȔ\͂gD
�V�X�e���J���m�E�n�E �y�����i�r�zPR
���Ȃ��ɂ������߂̋L��PR

RSS�ɂ‚���

�A�C�e�B���f�B�AID�ɂ‚���

���[���}�K�W���o�^

��IT�̃��[���}�K�W���́A �������A���ׂĖ����ł��B���Ѓ��[���}�K�W�������w�ǂ��������B