ãèœã¡ãå Žæããšãçç¯äººããä¹é¢ããæªçŸè±¡ãè§£æïŒAddressSanitizerã¬ããŒãã®éç®ç¹å®è¡
C/C++éçºã§æãæããããã°ã¯ãã¡ã¢ãªãäžæ£ã«è§£æŸã»ç Žå£ããç¬éã«ã¯ã¯ã©ãã·ã¥ãããæ°ååŸãå šãç¡é¢ä¿ãªé¢æ°ã®äžã§çªç¶æ»ã¬ããšããã¡ã¢ãªç Žå£ã§ããçŸä»£ã®éçºçŸå Žã§å¿ é ã® AddressSanitizer (ASan) ã®ã¹ã¿ãã¯ãã¬ãŒã¹ãšããŒãå²ãåœãŠ/è§£æŸãã°ãããã®çŒåã§èªã¿è§£ããUse-After-FreeïŒè§£æŸåŸã¡ã¢ãªåç §ïŒã®çç¯äººãéç®ç¹å®ããéèæè¡ãäœåŸããŸãã
ãªãC++ã®ã¡ã¢ãªç Žå£ã¯è¿·å®®å ¥ãããã®ãïŒã¯ã©ãã·ã¥ãã³ããããç¯äººã®çåã©ã€ã³ããéåŒãããææ³ãåŠã³ãŸãã
以äžã®C++ã²ãŒã ã«ãŒãã³ãŒãã«ã¯ãèŽåœç㪠Use-After-Free ãã°ãçµã¿èŸŒãŸããŠããŸããçãã€ã³ã¿ã®å¯¿åœã远跡ããŠãã ããã
æ¬ã³ãŒãã `-fsanitize=address` ä»ãã§å®è¡ããéã«åºåãããæ¬ç©ã®éèã¬ããŒãã®èªã¿è§£ãã§ãã
ãã©ãŠã¶ã§JavaScriptãæå¹ã«ãããšããã©ãŠã¶å ã€ã³ããŒããŒã²ãŒã ãšãã¥ã¬ãŒã¿ãã¡ã¢ãªãããå¯èŠåãUMLã¯ã©ã¹å³ã察話å解説ãç解床ã¯ã€ãºãèµ·åããŸãã