±à¼ÍƼö: |
±¾ÎÄÀ´×ÔÓÚcsdn£¬±¾ÎÄÕÂÖ÷Òª½éÉÜÁËÈçºÎͨ¹ýÁ˽âÕû¸öÓ¦ÓõÄÒµÎñÂß¼£¬ÄæÏò»ØËݵķ½Ê½Ö»ÄܶÔͨÓé¶´½øÐпìËÙÉ󼯡£ |
|
°´ÕÕÒµÎñÀàÐÍÕýÏòÉó¼Æ
ÄæÏò»ØËݵÄÉ󼯷½Ê½Õë¶ÔÌØÕ÷Ã÷ÏԵݲȫ©¶´ÍÚ¾òÊǷdz£ÓÐЧµÄ£¬µ«ÊÇͬÑù»áÓкܶà±×¶Ë£¬Í¨¹ýÄæÏò»ØËݵķ½Ê½Ö»ÄܶÔͨÓé¶´½øÐпìËÙÉ󼯣¬²»ÄÜÈ«ÃæÍÚ¾ò¸üÓмÛÖµµÄ©¶´£¬Èç¹ûÔÚʱ¼äÔÊÐíµÄÇé¿öÏ£¬ÆóÒµÖа²È«ÔËÓª¶Ô×ÔÉí²úÆ·½øÐдúÂëÉ󼯣¬¾ÍÐèÒªÁ˽âÕû¸öÓ¦ÓõÄÒµÎñÂß¼£¬±ÈÈçԽȨÀà©¶´£¬ÐèÒªÁ˽âÓ¦ÓÃÖÐȨÏÞ»®·Ö£¬Ã¿Ò»¼¶±ðÓû§µÄ¹¦ÄÜ£¬ÕâÑù²ÅÄܺܺõķ¢ÏÖ²¢È·¶¨ÄÄЩ²Ù×÷ÊÇ·Ç·¨µÄ¡£
1¡¢Ä³ÏµÍ³Ô½È¨²é¿´ÈÎÒâÓû§¸öÈË×ÊÁÏ
ÒµÎñÀàÐ͵ÄÕýÏòÉó¼ÆÍ¨³£´Óǰ¶ËÒ³Ãæ¿ªÊ¼£¬ÒòÎªÒ³Ãæ»áÓÐϵͳÖд󲿷ֹ¦ÄÜչʾ£¬ÕÒ³ö¹¦ÄÜËù¶ÔÓ¦µÄURL¾ÍÊÇÎÒÃÇËùÉó¼ÆÊý¾ÝÁ÷µÄÊäÈëµã£¬Ä³ÏµÍ³Ð޸ĸöÈË×ÊÁÏ´¦´æÔÚÆ½ÐÐԽȨ¡£
ÔÚ¿Í»§ÏÖ³¡Éó¼Æ´ó²¿·ÖÇé¿öÊÇûÓвâÊÔ»·¾³µÄ£¬Ò²¾ÍÊÇÖ»ÄÜͨ¹ýǰ¶ËµÄÕ¹Ê¾Ò³Ãæ¶Ôÿһ¸ö¹¦ÄܽøÐÐÉ󼯡£¿Í»§»áÖ±½Ó½«ÏîÄ¿´úÂë½»¹ýÀ´£¬Ê×ÏÈÒª½«Ëüµ¼Èë±à¼Æ÷£¬Èç¹ûÊôÓÚEclipseµ¼³öµÄÏîĿֱ½Óµ¼Èë¾Í¿ÉÒÔ£¬µ«ÊÇÏà¶ÔÀ´ËµÃ»ÓÐÕâôÀíÏëµÄÇé¿ö£¬ÄÇô¿ÉÒÔʹÓôúÂë±à¼Æ÷£¬ÀýÈçSublimeText£¬ÈçÏÂͼ£º

¿ÉÒÔÖ±½Ó½«Îļþ¼ÐÍÏ×§×ó±ßĿ¼Ê÷£¬Äõ½4¸ö´úÂë°ü£¬¹µÍ¨Á˽⵽coreServerΪºËÐÄÒµÎñ´úÂëÊôÓÚmodel²ã£¬apiServerΪǰ¶ËµÄAPI´úÂëÊôÓÚcontroller²ã£¬jspxcmsΪCMSºËÐĺͺó¶Ë¹ÜÀí´úÂëÊôÓÚview²ã£¬casΪµ¥¶ÀµÄµ¥µãµÇ¼·þÎñ°üÔÝʱ²»ÔÚ´Ë©¶´µÄÉ󼯷¶Î§ÄÚ¡£
ÔÚ½øÐÐÉó¼ÆÖ®Ç°ÎÒÃÇÒªÁ˽âÕû¸öÓ¦Óõļܹ¹£¬Í¨¹ý²é¿´web.xmlÁ˽⵽ÏîÄ¿²ÉÓÃSpingMVC¼Ü¹¹£¬²¢ÇÒδÔÚweb.xmlÖÐÅäÖð²È«¹ýÂËÆ÷¡¢Éí·ÝУÑé»úÖÆ£¬ÈçÏÂͼ£º

SpingMVCµÄ³£ÓÃ@RequestMapping×¢½âΪ¿ØÖÆÆ÷Ö¸¶¨¿ÉÒÔ´¦ÀíÄÄЩ URL ÇëÇó£¬Ò²¾ÍÊÇ˵¿ÉÒÔÖ±½Óͨ¹ýÔÚ¿ØÖƲãËÑË÷URLÇëÇ󣬼´¿ÉÕÒµ½¿ØÖƲãËù¶ÔÓ¦µÄÒµÎñÂß¼´úÂë¡£
ͨ¹ý²é¿´jspxcmsÖÐhtmlÒ³ÃæÕÒµ½Ð޸ĸöÈË×ÊÁϵŦÄÜÒ³Ãæuser/profile.html£¨¿ÉÒÔͨ¹ý¹Ø¼ü×ÖÈ¥ËÑË÷ÏàÓ¦¹¦ÄÜÒ³Ãæ£¬±ÈÈçÓû§ÖÐÐÄËÑË÷user£¬ÐÞ¸ÄÃÜÂëËÑË÷password£©£¬ÈçÏÂͼ£º

ÇëÇóµÄURL»áÔÚjsÎļþÖУ¬Ò²»áÔÚform±íµ¥ÖС£
µ±ÕÒµ½²é¿´¸öÈË×ÊÁÏÇëÇóµÄURLºó£¬¿ÉÒÔͨ¹ýSublimeTxtµÄÈ«¾ÖËÑË÷ÕÒµ½apiserverÖÐËù¶ÔÓ¦µÄÒµÎñÂß¼´úÂ룬ÈçÏÂͼ£º

¸úÈëcoreServerÖÐuserServiceÀàÖнøÐÐÉ󼯣¬ÈçÏÂͼ£º

2¡¢JeebbsÓÊÏäÂß¼Ñé֤©¶´£º
×¢²áµÄURLµØÖ·ÊÇ£ºhttp://localhost/jeebbs/register.jspx£¬ register.jspxºÜÃ÷ÏÔÊÇ¿ØÖƲãÓ³ÉäµÄURL£¬µÚÒ»ÒªÎñÊÇÕÒµ½Ëü¡£È»ºó¿´ËûµÄÂß¼¡£
Tips£ºEclipseÈ«¾ÖËÑË÷¹Ø¼ü×Ö·½·¨£º

¸ù¾ÝËÑË÷½á¹ûÕÒµ½¶ÔÓ¦Îļþ£º

¸ù¾Ý½á¹ûÕÒµ½¶ÔÓ¦µÄpublic class RegisterActÀ࣬²¢²é¿´¶ÔÓ¦Âß¼´úÂ룺

ÕÒµ½¿ØÖƲãµÄÈë¿Úºó¼´¿ÉÔÚ¶ÔÓ¦µÄ·½·¨ÄÚÉèÉ϶ϵ㣬Ȼºó·¢ËÍÇëÇ󵽿ØÖƲãµÄURL½øÈëDebugģʽ¡£
×¢²á·¢ËÍÊý¾Ý°üʱÓÃTamper dataÀ¹½Ø²¢ÐÞ¸ÄÇëÇóµ±ÖеÄemailΪxss¹¥»÷´úÂë¡£


Ñ¡ÔñÈÎÒâ¶ÔÏóÓÒ¼üWatch¼´¿É²é¿´¶ÔÓ¦µÄÖµ£¨ÈÎÒâÍêÕûµÄ£¬ÓÐЧµÄ¶ÔÏó°üÀ¨·½·¨Ö´ÐУ©¡£
F6µ¥²½Ö´ÐС£

F5½øÈëvalidateSubmit£º

F6¸úµ½125ÐÐ×¢²áµ÷Óãº

F3¿ÉÒÔÏȵ㿪registerMemberÀà¿´¿´£º

ÕÒµ½½Ó¿ÚʵÏÖÀ༴×îÖÕµÄ×¢²áÂß¼´úÂ룺

3¡¢»ý·Ö¸º³ä©¶´

»ý·Ö¶Ò»»·½·¨ÈçÏ£º
@RequestMapping(value
= "/member/creditExchange.jspx")
public void creditExchange(Integer creditIn, Integer
creditOut,
Integer creditOutType, Integer miniBalance, String
password,HttpServletRequest request, HttpServletResponse
response) {}
|
¿ÉÒÔ¿´µ½ÕâÀïÖ±½ÓÓÃÁËSpringMvc×¢Èë²ÎÊý£¬¶øÕâЩ²ÎÊýǡǡÊÇ¿ØÖƳÌÐòÂß¼µÄ¹Ø¼ü¡£±ÈÈç¹¹½¨ÈçÏÂURL£¬Í¨¹ýGET»òÕßPOST·½Ê½¶¼ÄܶñÒâÐÞ¸ÄÓû§µÄ»ý·Ö£º
http://localhost/jeebbs/member/creditExchange.jspx?
creditIn=26&creditOut=-27600&creditOutType=1
&miniBalance=-10000000&password=wooyun
|
ÒòΪËûµÄÂß¼ÊÇÕâôдµÄ£º
if(user.getPoint()-creditOut>miniBalance)
{
balance=true;
} else {
flag=1;
} |
´ÓUser¶ÔÏóÀïÃæÈ¡³ö»ý·ÖµÄÊýÖµ£¬¶ø»ý·Ö¶Ò»»ÍþÍû¾ßÌåÐèÒª¶àÉÙÊÇÔÚÈ·¶¨¶Ò»»¹ØÏµºóÓÉajaxÈ¥ºǫ́¼ÆËã³öÀ´µÄ£¬Ìá½»µÄʱºòҲûÓÐÑéÖ¤¼ÆËãµÄ½á¹ûÓÐûÓб»¿Í»§¶Ë¸Ä¹ý¡£ÆäÖеÄcreditOutºÍminiBalance¶¼ÊÇÎÒÃǿɿصġ£ËùÒÔÕâ¸öµÈʽ²»¹ÜÔÚʲôÇé¿öÏÂÎÒÃǶ¼¿ÉÒÔÈÃËü³ÉÁ¢¡£

4¡¢´òÕкô¹¦ÄÜ´¦XSS
Âß¼ÓÐ×öÅжϣº1¡¢Óû§ÃûΪ¿Õ¡£2¡¢²»ÔÊÐí·¢ËÍÏûÏ¢¸ø×Ô¼º¡£3¡¢Óû§Ãû²»´æÔÚ¡£
ÔÚ¿ØÖƲ㲢ûÓÐ×ö¹ýÂË£º

ÔÚµ÷ÓÃcom.jeecms.bbs.manager.impl. BbsMessageMngImpl.javaµÄsendMsg·½·¨µÄʱºòÒÀ¾ÉûÓйýÂË¡£µ½×îÖÕµÄBbsMessageDaoImpl
µÄsave·½·¨»¹ÊÇûÓйýÂ˾ÍÖ±½Ó´¢´æÁË;
Ò»°ãÐÔµÄ×ö·¨£¬¹ØÏµµ½Óû§½»»¥µÄµØ·½×îºÃ×örefererºÍxss¹ýÂ˼ì²â£¬¿ØÖƲ㸺ÔðÊÕ¼¯Êý¾ÝµÄͬʱ×îºÃ´¦ÀíÏÂÓû§µÄÇëÇ󣬾ÍËãcontroller²»´¦ÀíÆðÂëÔÚservice²ã×öÏ´¦Àí°É¡£

|