RSAC2022 |ÉîÈë½â¶ÁAPIÄþ¾²ÈçºÎÆƽâÀ§¾³
Ðû²¼Ê±¼ä 2022-06-23ÔÚ½ñÄêµÄRSACÖУ¬ÒÔÉ«ÁеÄAPIÄþ¾²¹«Ë¾NeoseÈëÑ¡´´ÐÂʮǿ£¬Í¬ÑùÔÚ2019Äê»ñµÃRASC´´ÐÂʮǿµÄSalt Security£¬Ò²ÊÇÒ»¼ÒÒÔAPIÄþ¾²ÎªÖ÷µÄ¹«Ë¾¡£±¾ÎĶ«Éƽ̨¼¯ÍŽáºÏÁË×ÔÉí¸»ºñµÄ¾Ñé³ÁµíÓëʵ¼ù»ýÀÛ£¬ÎªÄúÉîÈë½â¶ÁAPIÄþ¾²£¬ÀåÇåAPIÄþ¾²·À»¤µÄ½â¾öÖ®µÀ¡£
APIÃæ¶ÔµÄÄþ¾²ÎÊÌâ
OWASPÔÚ2019ÄêÐû²¼µÄ API TOP10·çÏÕ·Ö±ðÊÇʧЧµÄ¹¤¾ßÊÚȨ¡¢Ê§Ð§µÄÓû§Éí·ÝÑéÖ¤¡¢¹ý¶ÈÊý¾Ý̻¶¡¢×ÊԴȱʧºÍËÙÂÊÏÞÖÆ¡¢Ê§Ð§µÄ¹¦Ð§¼¶ÊÚȨ¡¢ÅúÁ¿·ÖÅä¡¢Äþ¾²ÅäÖôíÎó¡¢×¢Èë¹¥»÷¡¢×ʲú¹ÜÀí²»Íס¢ÈÕÖ¾¼à¿Ø²»×ã¡£Õë¶ÔÕâ10ÀàÄþ¾²·çÏÕ£¬Áоٲ¿ÃÅÀûÓÃÔÀíºÍʹÓÃʾÀý£º
ʧЧµÄ¹¤¾ßÊÚȨ£º¹¤¾ßÊÚȨÊÇÒ»ÖÖÔÚ´úÂë²ãÃæʵÏֵķÃÎÊ¿ØÖÆ»úÖÆ£¬ÓÃÓÚÏÞÖÆÓû§½öÄÜ·ÃÎÊÆäÓÐȨ·ÃÎʵŤ¾ß£¬µ«ÈëÇÖÕß¿ÉÒÔͨ¹ý¸Ä±äIDÀ´¹¥»÷´æÔÚ¡°Ê§Ð§µÄ¹¤¾ß¼¶ÊÚȨ¡±Â©¶´µÄAPI¡£ÀýÈ磬ÓÉÓÚûÓÐÍêÉƵÄȨÏÞ¿ØÖÆ»úÖÆ£¬ÈëÇÖÕß¿ÉÒÔÔÚÇ°ºǫ́½»»¥ÖУ¬Í¨¹ý¸Ä±äÁ´½ÓÖеÄIDÖµÀ´¿ØÖÆAPI·µ»Ø²îÒìµÄÓû§Êý¾Ý£¬Òò´æÔÚˮƽԽȨÎÊÌâ´Ó¶øÔì³ÉÃô¸ÐÐÅϢй©¡£
¹ý¶ÈµÄÊý¾Ý̻¶£ºAPIÔÚ¶Ô²éѯ½øÐÐÏìÓ¦µÄʱºò·µ»ØÁ˹ý¶àµÄÃô¸ÐÐÅÏ¢¡£ÀýÈ磺ijÓû§Ãû²éѯ½Ó¿Ú£¬±¾Ó¦Éè¼ÆΪֻ·µ»ØÓû§Ãû£¬µ«Êµ¼ÊÏò½Ó¿ÚÌᳫÊý¾Ý²éѯʱȴ½«Óû§ËùÓÐÐÅÏ¢¾ù·µ»Ø¸ø¿Í»§¶Ë£¬Ôì³ÉÊý¾Ýй¶¡£
×ʲú¹ÜÀí²»Í×£ºÓÉÓÚÏÖ´úÓ¦Ó÷¨Ê½¿ª·¢µÄ½»¸¶ÖÜÆڽ϶̣¬DevOpsÍŶӾ³£½«¸ü¶àµÄAPI²¿Êðµ½Éú²ú»·¾³ÖУ¬Õâ´øÀ´ÁË×ʲú¹ÜÀíÎÊÌâ¡£Ê×ÏÈ£¬Ïòºó¼æÈݵÄÒªÇóÆÈʹDevOpsÍŶÓÈþɰ汾API¼ÌÐøÔËÐС£¹¥»÷Õßͨ³£êéêìÕâЩ¾É°æ±¾£¬×êÄþ¾²¼ì²é»úÖƵĿÕ×Ó¡£Í¬Ê±£¬ÆäËûµÄAPIÒ²¿ÉÄÜδ×ñÊØÊý¾ÝÖÎÀíÕþ²ß£¬Ê¹Æä³ÉΪÊý¾Ý̻¶µÄÒªº¦Èë¿Úµã¡£
APIÄþ¾²·À»¤µÄ½â¾öÖ®µÀ
¶Ô±ÈOWASP TOP 10ºÍOWASP API TOP 10£¬·¢ÏÖÕâÁ½²¿ÃÅÓнϴóµÄÖغÏÐÔ£¬µ«ÊÇAPIÒµÎñµÄ³¡¾°ºÍ¼Ü¹¹Ô½·¢ÅÓ´ó£¬ËùÒÔGartnerÕë¶ÔAPIÄþ¾²¸ø³öÁËÒ»¸ö²Î¿¼½¨Ò飺APIÄþ¾²¿ÉÒÔÓÉWAFºÍAPIÍø¹ØÁ½²¿ÃÅ×é³É¡£
APIÄþ¾²·À»¤¼Ü¹¹¼°·Ö¹¤
ÔÚAPIÄþ¾²½â¾ö·½°¸ÖУ¬×÷ΪWAFÆóÒµÀ´Ëµ£¬²úÎïÔöÇ¿APIÄþ¾²·À»¤¿ÉÒÔ´ÓÒÔϼ¸¸ö·½ÃæÀ´¿¼ÂÇ£º
1¡¢API×ʲúÊáÀíºÍ¼à¿Ø
·¢ÏÖAPI×ʲú²¢½øÐÐÖðÒ»Å̵ãºÍ¸ú×Ù£¬½¨Á¢APIÇåµ¥²¢Ê¶±ðÿ¸öAPIµÄÓÃ;£¬Í¬Ê±¶ÔÓÚÄÚ²¿APIºÍÍⲿAPI½øÐÐÇø±ð¿´´ý£»»ùÓÚÅ̵ãµÄAPIÇåµ¥½øÐзÃÎʼÆıµÄÏêϸÅäÖ㬾¡Á¿ÖÆÖ¹²îÒìµÄ¹¤¾ßÊôÐÔ£¬Ê¹ÓÃÏàͬµÄAPI¼Æı¡£
WAF²úÎïÉϵÄAPIµÄ×ʲú¹ÜÀí£¬ÐèÒª¾ß±¸APIÐÒéµÄʶ±ð¡¢API×ʲúµÄ×Ô¶¯·¢ÏÖ¡¢Áé»îµÄAPI×ʲú·Ö×é¡¢API×ʲúµÄµ¼Èëµ¼³ö¡¢API×ʲúµÄÏÂÏß´¦Öá¢API×ʲú·ÃÎʵļÆıÅäÖá¢×Ô¶¯»¯µÄAPI×ʲú¹ÜÀí½Ó¿ÚµÈ»ù´¡ÄÜÁ¦¡£
2¡¢API¹¥»÷ʶ±ðºÍ·À»¤
Õë¶ÔOWASP API TOP 10µÄÄþ¾²·çÏÕ£¬ÔÚWAFµÄAPIÄþ¾²·À»¤Ä£¿éµÄ¹¦Ð§Éè¼ÆºÍʵÏÖÉÏ£¬ÐèÒª¾ß±¸APIÇëÇóºÏ·¨ÐÔУÑé¡¢·À·¶×²¿âºÍ±©Á¦Æƽ⡢APIµÄ¹¤¾ß¸ñʽµÄÏÞÖÆ¡¢¿É½ç˵ÔÊÐíµÄÏìÓ¦Êý¾ÝÀàÐÍ¡¢Õë¶ÔÏà¹Ø±êʶ¾ß±¸Ð޸ġ¢¶àÖÖ·À×¢Èë¹¥»÷¡¢×Ô½ç˵¼ì²â¹æÔòµÈÄÜÁ¦¡£
ÔÚ¶ÔAPIÒµÎñ¹¥»÷ÉÏ£¬×¢ÈëÀàÈëÇÖÕ¼¾ÝÁ˺ܴóµÄ±ÈÂÊ£¬¶ÔÓÚ×¢ÈëÀÛÈëÇֵļì²â¿ÉÒÔͨ¹ýÌØÕ÷¼ì²â¡¢Ëã·¨¼ì²â¡¢AI¼ì²âµÈ¼¼ÊõÊֶΣ¬Ðͬ×÷ÓÃʵÏÖ¾«×¼µÄ×¢ÈëÀàÈëÇÖ¼ì²â¡£
3¡¢APIÒì³£·ÃÎÊÐÐΪ·ÖÎö
ÐÐΪÌØÕ÷ÌáÈ¡ÊÇÕû¸öÐÐΪ·ÖÎö½¨Ä£µÄ»ù´¡£¬Ðè½áºÏʵ¼ÊµÄÒµÎñÐèÇó£¬ÒÔÊý¾ÝʵÌåΪÖÐÐÄ£¬¹æÔ¼Êý¾Ýά¶ÈÀàÐͺ͹ØÁª¹Øϵ£¬ÐγÉÇкÏÒµÎñʵ¼ÊÇé¿öµÄ½¨Ä£Ìå¡£
»ùÓÚÒì³£ÐÐΪ·ÖÎö£¬ÄÜ·¢ÏÖÎÞÃ÷ÏÔÌØÕ÷µÄ¹¥»÷ÐÐΪ£¬»òÕßÊÇÕë¶ÔÒµÎñµÄÒì³£·ÃÎÊ£¬ºÃ±È·¢ÏÖ´óÁ¿µÄÊý¾Ý´«Êä¡¢Òì³£µÄ·ÃÎʹ¤¾ß¡¢±»¹¥»÷ÀûÓõĹýÆÚAPI»òÕßÊǽ©Ê¬API¡¢¹ý¶È̻¶µÄÊý¾ÝµÈ¡£
4¡¢API·ÃÎÊÐÔÄܼà¿Ø
API·ÃÎÊÐÔÄܼà¿ØÄܹ»ÔÚ·ºÆð´óÁ¿APIÇëÇóµÄÇé¿öÏ£¬±£Ö¤APIµÄ·þÎñÄÜÕý³£¹¤ÓëϵͳµÄÈÍÐÔ¡£
ÔÚAPI·ÃÎÊÐÔÄܼà¿ØÖУ¬Ò»ÊÇÐèÒªÄÜÇø·ÖÕý³£ÒµÎñ·ÃÎʺͻúÆ÷µÄ·ÃÎÊÁ÷Á¿£¬¶Ô»úÆ÷µÄ·ÃÎÊÁ÷Á¿¿ÉÒÔ×ö¹ýÂË£»¶þÊÇ´¦ÖÃÕý³£·ÃÎʵÄʱºò£¬ÔÚijЩÌØÊⳡ¾°ÏÂÐèÒª×öµ½ÇëÇóÏÞÁ÷¡¢·þÎñ½µ¼¶»òÕßÊÇÓÐÌõ¼þµÄ·þÎñÈ۶ϵȲÙ×÷£¬ÒÔ×î´óÏ޶ȱ£Ö¤APIÒµÎñ²»³¹µ×̱»¾¡£
5¡¢Ãô¸ÐÊý¾Ýʶ±ðºÍ¹ýÂË
ÔÚAPI·ÃÎÊÖлᴫÊä´óÁ¿µÄÊý¾Ý£¬Êý¾ÝµÄ´«Êä·ÖΪÕý³£·ÃÎʺÍÊý¾ÝÇÔÈ¡µÈ£¬¶ÔÓÚÕý³£µÄÊý¾Ý·ÃÎÊ£¬¿ÉÒÔÔÚÊý¾Ý·Ö¼¶·ÖÀàµÄÇé¿öÏ£¬ÔÚAPIÄþ¾²Íø¹ØÉÏʵÏÖ¶ÔÊý¾ÝµÄÍÑÃôºÍ»ìÏýµÈ¹¦Ð§£»¶ÔÓÚÊý¾ÝÇÔÈ¡µÄÇé¿öÏ£¬ÐèҪʶ±ðÒì³£µÄÊý¾Ýй¶£¬²¢×è¶ÏÒì³£·ÃÎʺÍÁ¬½Ó¡£
API×÷ΪÁ´½ÓÊý¾ÝµÄÒ»ÖÖ±ã½Ý¸ßЧµÄ·½Ê½£¬ÒѾ³ÉΪÁËITºÍDTʱ´ú×îÖØÒªµÄÓ¦ÓÃģʽ֮һ£¬Æä³ÐÔصÄÊý¾ÝÓµÓо޴óµÄ¼ÛÖµ£¬Ò²´øÀ´¶àÖÖÉÌҵģʽÅÉú³¤£¬ÒýÆðÁËÖÖÖÖ¶ñÒâ×éÖ¯ºÍ¸öÈË´óÁ¿µÄ¹Ø×¢¡£
Ëæ׏úÄÚÍâµÄÊý¾ÝÄþ¾²¹æÔò¡¢ÐÐÒµºÍ×éÖ¯µÄAPIÄþ¾²¹æ·¶µÄ°ä²¼ÓëʵÐУ¬ÆóÒµÀ©´ó¶ÔAPIÄþ¾²µÄÐèÇó£¬ÒµÎñ¿ª·¢ÍŶÓÄþ¾²ÒâʶµÄÌáÉý£¬Äþ¾²¼ì²â¼¼ÊõºÍÄþ¾²½â¾ö·½°¸µÄ¿ìËÙÉú³¤ºÍÑݽø£¬¶¼½«ÎªAPIÁ´½ÓµÄÊý¾Ý±£¼Ý»¤º½£¬APIÄþ¾²·À»¤ÄÜÁ¦½«³ÉΪÊý¾Ý´óÏõÄÎȹ̻ù×ùÖ®Ò»¡£
СÌùÊ¿£º
API£ºÊÇÖ¸Ó¦Ó÷¨Ê½½Ó¿Ú£¨Application Program Interface£©£¬ÊÇÒ»ÖÖ·¨Ê½Ö®¼äµÄ½Ó¿Ú£¬ÒòÆä±ã½ÝÐÔºÍ΢·þÎñ¼Ü¹¹£¬µÃµ½Á˹㷺µÄÓ¦Óã¬Ä¿Ç°ÒÑÁýÕÖÁËÒƶ¯Ó¦Ó÷¨Ê½£¬ÎïÁªÍøIOT£¬ÔÆ·þÎñ¿Í»§¶Ë£¬ÄÚ²¿Ó¦Ó÷¨Ê½£¬ºÏ×÷»ï°éÓ¦Ó÷¨Ê½µÈITÁìÓòµÄ¶à¸ö·½Ãæ¡£
APIÄþ¾²£ºÍ¨¹ý¶ÔAPIͨÐÅÐÐΪµÄÊÕÂÞ¡¢¼à¿Ø¡¢·ÀÓùµÈÊֶΣ¬·¢ÏÖ²¢ÊÕÁ²APIÉú²ú¹ý³ÌÖеķçÏÕ£¬À¹½ØÕë¶ÔAPIµÄ©¶´¹¥»÷¼°Êý¾ÝÇÔÈ¡ÐÐΪ¡£