éçºè
ã䟵å
¥ãã¹ã¿ãŒãã»ãã¥ãªãã£å°é家ã¯ãå°éçãªæŽ»åã®äžç°ãšããŠãè匱æ§ç®¡ç (VM)ã(å®å
šãª) SDLC ãªã©ã®ããã»ã¹ã«å¯ŸåŠããå¿
èŠããããŸãã
ãããã®ãã¬ãŒãºã®äžã«ã¯ããŠãŒã¶ãŒã¯ç°ãªããŸãããããŸããŸãªå®è·µæ¹æ³ã䜿çšãããããŒã«ã絡ã¿åã£ãŠããŸãã
æè¡ã®é²æ©ã¯ã人ã®ä»£ããã« XNUMX ã€ã®ããŒã«ã§ã€ã³ãã©ã¹ãã©ã¯ãã£ããœãããŠã§ã¢ã®ã»ãã¥ãªãã£ãåæã§ãã段éã«ã¯ãŸã éããŠããŸããã
ãªããããªãã®ãããããŠã©ã®ãããªåé¡ã«çŽé¢ããªããã°ãªããªãã®ããç解ããã®ã¯èå³æ·±ãããšã§ãã
ÐÑПÑеÑÑÑ
è匱æ§ç®¡çããã»ã¹ã¯ãã€ã³ãã©ã¹ãã©ã¯ãã£ã®ã»ãã¥ãªãã£ãšããã管çãç¶ç¶çã«ç£èŠããããã«èšèšãããŠããŸãã
Secure SDLC ããã»ã¹ (ãå®å
šãªéçºãµã€ã¯ã«ã) ã¯ãéçºããã³éçšäžã«ã¢ããªã±ãŒã·ã§ã³ã®ã»ãã¥ãªãã£ãç¶æããããã«èšèšãããŠããŸãã
ãããã®ããã»ã¹ã®åæ§ã®éšåã¯ãè匱æ§è©äŸ¡ããã»ã¹ (è匱æ§è©äŸ¡ãè匱æ§ã¹ãã£ã³) ã§ãã
VM å
ã§ã®ã¹ãã£ã³ãš SDLC å
ã®äž»ãªéãã¯ãåè
ã®å Žåãç®çã¯ãµãŒãããŒã㣠ãœãããŠã§ã¢ãŸãã¯æ§æå
ã®æ¢ç¥ã®è匱æ§ãèŠã€ããããšã§ããããšã§ãã ããšãã°ãWindows ã®å€ãããŒãžã§ã³ã SNMP ã®ããã©ã«ãã®ã³ãã¥ããã£æååãªã©ã§ãã
XNUMX çªç®ã®ã±ãŒã¹ã®ç®æšã¯ããµãŒãããŒãã£ã®ã³ã³ããŒãã³ã (äŸåé¢ä¿) ã ãã§ãªããäž»ã«æ°è£œåã®ã³ãŒãã®è匱æ§ãæ€åºããããšã§ãã
ããã«ãããããŒã«ãã¢ãããŒãã®éããçããŸãã ç§ã®æèŠã§ã¯ãã¢ããªã±ãŒã·ã§ã³ã®æ°ããè匱æ§ãèŠã€ããã¿ã¹ã¯ã¯ãããŒãžã§ã³ã®ãã£ã³ã¬ãŒããªã³ãã£ã³ã°ããããŒåéããã¹ã¯ãŒãã®ãã«ãŒããã©ãŒã¹ãªã©ã«åž°çããªããããã¯ããã«èå³æ·±ããã®ã§ãã
ã¢ããªã±ãŒã·ã§ã³ã®è匱æ§ãé«å質ã«èªåã¹ãã£ã³ããã«ã¯ãã¢ããªã±ãŒã·ã§ã³ã®ã»ãã³ãã£ã¯ã¹ããã®ç®çãç¹å®ã®è
åšãèæ
®ããã¢ã«ãŽãªãºã ãå¿
èŠã§ãã
å€ãã®å Žåãã€ã³ãã©ã¹ãã©ã¯ã㣠ã¹ãã£ãã¯ã¿ã€ããŒã§çœ®ãæããããšãã§ããŸãã
ããŒã«
ã¹ãã£ã³ãšã»ãã¥ãªãã£åæã¯ããã©ã㯠ããã¯ã¹ãŸãã¯ãã¯ã€ã ããã¯ã¹ãšããŠå®è¡ã§ããŸãã
ãã©ãã¯ããã¯ã¹ ã¹ãã£ã³ã§ã¯ãããŒã«ã¯ããŠãŒã¶ãŒããµãŒãã¹ãæäœããã®ãšåãã€ã³ã¿ãŒãã§ã€ã¹ãä»ããŠãµãŒãã¹ãæäœã§ããå¿ èŠããããŸãã
ã€ã³ãã©ã¹ãã©ã¯ã㣠ã¹ãã£ã (Tenable NessusãQualysãMaxPatrolãRapid7 Nexpose ãªã©) ã¯ãéããŠãããããã¯ãŒã¯ ããŒããæ¢ããããããŒããåéããã€ã³ã¹ããŒã«ãããŠãããœãããŠã§ã¢ ããŒãžã§ã³ãç¹å®ãããã¬ããž ããŒã¹ã§ãããã®ããŒãžã§ã³ã®è匱æ§ã«é¢ããæ å ±ãæ€çŽ¢ããŸãã ãŸããããã©ã«ãã®ãã¹ã¯ãŒããããŒã¿ãžã®ãããªã㯠ã¢ã¯ã»ã¹ã匱ã SSL æå·ãªã©ã®æ§æãšã©ãŒãæ€åºããããšããŸãã
Web ã¢ããªã±ãŒã·ã§ã³ ã¹ãã£ã㌠(Acunetix WVSãNetsparkerãBurp SuiteãOWASP ZAP ãªã©) ã¯ãæ¢ç¥ã®ã³ã³ããŒãã³ããšãã®ããŒãžã§ã³ (CMSããã¬ãŒã ã¯ãŒã¯ãJS ã©ã€ãã©ãªãªã©) ãæ€åºã§ããŸãã ã¯ããŒã«ã®äž»ãªã¹ãããã¯ãã¯ããŒã«ãšãã¡ãžã³ã°ã§ãã
ã¯ããŒã«äžã«ãã¯ããŒã©ãŒã¯æ¢åã®ã¢ããªã±ãŒã·ã§ã³ ã€ã³ã¿ãŒãã§ã€ã¹ãš HTTP ãã©ã¡ãŒã¿ãŒã«é¢ããæ
å ±ãåéããŸãã ãã¡ãžã³ã°äžããšã©ãŒãåŒãèµ·ãããŠè匱æ§ãæ€åºããããã«ãæ€åºããããã¹ãŠã®ãã©ã¡ãŒã¿ãŒãå€ç°ããããŒã¿ãŸãã¯çæãããããŒã¿ã«çœ®ãæããããŸãã
ãã®ãããªã¢ããªã±ãŒã·ã§ã³ ã¹ãã£ãã¯ãDAST ã¯ã©ã¹ãš IAST ã¯ã©ã¹ (ããããåçã¢ããªã±ãŒã·ã§ã³ ã»ãã¥ãªã㣠ãã¹ããšå¯Ÿè©±åã¢ããªã±ãŒã·ã§ã³ ã»ãã¥ãªã㣠ãã¹ã) ã«å±ããŸãã
ãã¯ã€ãããã¯ã¹
ãã¯ã€ãããã¯ã¹ ã¹ãã£ã³ã§ã¯ãããã«å€ãã®éãããããŸãã
VM ããã»ã¹ã®äžéšãšããŠãã¹ãã£ã㌠(VulnersãIncsecurity CouchãVulsãTenable Nessus ãªã©) ã¯ãèªèšŒãããã¹ãã£ã³ãå®è¡ããããšã«ãã£ãŠã·ã¹ãã ãžã®ã¢ã¯ã»ã¹ãèš±å¯ãããããšããããããŸãã ãããã£ãŠãã¹ãã£ãã¯ããããã¯ãŒã¯ ãµãŒãã¹ ãããŒããæšæž¬ããããšãªããã€ã³ã¹ããŒã«ãããŠããããã±ãŒãžã®ããŒãžã§ã³ãšæ§æãã©ã¡ãŒã¿ãã·ã¹ãã ããçŽæ¥ããŠã³ããŒãã§ããŸãã
ã¹ãã£ã³ã¯ããæ£ç¢ºãã€å®å
šã«ãªããŸãã
ã¢ããªã±ãŒã·ã§ã³ã®ãã¯ã€ãããã¯ã¹ ã¹ãã£ã³ (CheckMarxãHP FortifyãCoverityãRIPSãFindSecBugs ãªã©) ã«ã€ããŠè©±ãå Žåãéåžžã¯éçã³ãŒãåæãšã察å¿ãã SAST ã¯ã©ã¹ ããŒã« (éçã¢ããªã±ãŒã·ã§ã³ ã»ãã¥ãªã㣠ãã¹ã) ã®äœ¿çšã«ã€ããŠè©±ããŸãã
åé¡
ã¹ãã£ã³ã«ã¯åé¡ããããããããŸã! ã»ãã¥ãªãã£åæäœæ¥ãè¡ããšãã ãã§ãªããã¹ãã£ã³ãå®å šãªéçºããã»ã¹ãæ§ç¯ããããã®ãµãŒãã¹ã®æäŸã®äžç°ãšããŠããããã®ã»ãšãã©ã«å人çã«å¯Ÿå¿ããå¿ èŠããããŸãã
ããã§ã¯ãããŸããŸãªäŒæ¥ã®ãšã³ãžãã¢ãæ å ±ã»ãã¥ãªã㣠ãµãŒãã¹è²¬ä»»è ãšã®äŒè©±ã§ã確èªãããŠãã 3 ã€ã®äž»èŠãªåé¡ã°ã«ãŒããåãäžããŸãã
Web ã¢ããªã±ãŒã·ã§ã³ã®ã¹ãã£ã³ã®åé¡
- å®è£ ã®é£ããã ã¹ãã£ããŒãæå¹ã«ããã«ã¯ãã¢ããªã±ãŒã·ã§ã³ããšã«å±éãæ§æãã«ã¹ã¿ãã€ãºããã¹ãã£ã³çšã®ãã¹ãç°å¢ãå²ãåœãŠãCI / CD ããã»ã¹ã«å®è£ ããå¿ èŠããããŸãã ããããªããšãç¡é§ãªæ£åŒãªæé ãšãªãã誀æ€ç¥ã®ã¿ãçºè¡ãããŠããŸããŸãã
- ã¹ãã£ã³æéã 2019 幎çŸåšã§ããã¹ãã£ããŒã¯ã€ã³ã¿ãŒãã§ã€ã¹ã®éè€æé€ã®ä»äºãäžååã§ãåãã³ãŒããåå ã§ããã«ããããããããããã 10 ã®ãã©ã¡ãŒã¿ãŒã䜿çšã㊠XNUMX ããŒãžãæ°æ¥éã¹ãã£ã³ã§ããŸããããããç°ãªããã®ãšã¿ãªããŠã¹ãã£ã³ããããšãã§ããŸãã åæã«ãéçºãµã€ã¯ã«å ã§å®çšŒåç°å¢ã«ãããã€ãããã©ãããè¿ éã«æ±ºå®ããå¿ èŠããããŸãã
- 貧匱ãªæšå¥šäºé ã ã¹ãã£ããŒã¯ããªãäžè¬çãªæšå¥šäºé ãæäŸããŸãããéçºè ãã¹ãã£ããŒãããªã¹ã¯ã®ã¬ãã«ãäžããæ¹æ³ããããŠæãéèŠãªããšãšããŠããããä»ããå®è¡ããå¿ èŠãããã®ãââããããšããŸã æããªãã®ããããã«ç解ã§ãããšã¯éããŸããã
- ã¢ããªã±ãŒã·ã§ã³ã«å¯Ÿããç Žå£çãªåœ±é¿ã ã¹ãã£ããŒã¯ã¢ããªã±ãŒã·ã§ã³ã«å¯Ÿã㊠DoS æ»æãç°¡åã«å®è¡ã§ãããŸããå€æ°ã®ãšã³ãã£ãã£ãäœæããããæ¢åã®ãšã³ãã£ãã£ãå€æŽãããããå¯èœæ§ããããŸã (ããšãã°ãããã°ã«æ°äžã®ã³ã¡ã³ããäœæãããªã©)ããã®ããã補åã§äžçšæã«ã¹ãã£ã³ãå®è¡ãã¹ãã§ã¯ãããŸããã
- è匱æ§æ€åºã®å質ãäœãã ã¹ãã£ãã¯éåžžããã€ããŒãã®åºå®é åã䜿çšãããããæ¢ç¥ã®ã¢ããªã±ãŒã·ã§ã³ã®åäœã«åœãŠã¯ãŸããªãè匱æ§ãç°¡åã«èŠéããŠããŸãå¯èœæ§ããããŸãã
- ã¹ãã£ããŒã¯ã¢ããªã±ãŒã·ã§ã³ã®æ©èœãç解ããŠããŸããã ã¹ãã£ããŒèªèº«ã¯ããã€ã³ã¿ãŒããããã³ã¯ãããæ¯æããããã³ã¡ã³ãããäœã§ããããç¥ããŸããã 圌ãã«ãšã£ãŠãååšããã®ã¯ãªã³ã¯ãšãã©ã¡ãŒã¿ã ãã§ãããããæœåšçãªããžãã¹ ããžãã¯ã®è匱æ§ã®èšå€§ãªå±€ãå®å šã«æããã«ããããäºéååŽãããããID ã§ä»äººã®ããŒã¿ãèŠãèŠããããåæšäºå ¥ããŠæ®é«ãååãããããããšã¯ãããŸããã
- ã¹ãã£ããŒã«ããããŒãžã®ã»ãã³ãã£ã¯ã¹ã®èª€è§£ã ã¹ãã£ããŒã¯ FAQ ãèªãããšãã§ããããã£ããã£ãèªèã§ãããç»é²ãšåãã°ã€ã³ã®æ¹æ³ãããã°ã¢ãŠãããã¯ãªãã¯ã§ããªãããšããã©ã¡ãŒã¿ãŒå€ãå€æŽããéã®ãªã¯ãšã¹ãã«çœ²åããæ¹æ³ãèªåã§æšæž¬ããããšãã§ããŸããã ãã®çµæãã¢ããªã±ãŒã·ã§ã³ã®å€§éšåããŸã£ããã¹ãã£ã³ãããªããŸãŸã«ãªãå¯èœæ§ããããŸãã
ãœãŒã¹ã³ãŒãã®ã¹ãã£ã³ã®åé¡
- åœéœæ§ã éç解æã¯ãå€ãã®åŠ¥åã䌎ãè€éãªã¿ã¹ã¯ã§ãã å€ãã®å Žåã粟床ãç ç²ã«ããå¿ èŠããããé«äŸ¡ãªãšã³ã¿ãŒãã©ã€ãº ã¹ãã£ããŒã§ãèšå€§ãªæ°ã®èª€æ€ç¥ãçºçããŸãã
- å®è£ ã®é£ããã éçåæã®ç²ŸåºŠãšå®å šæ§ãé«ããã«ã¯ãã¹ãã£ã³ ã«ãŒã«ãæ¹è¯ããå¿ èŠããããŸããããããã®ã«ãŒã«ã®äœæã«ã¯æéãããããããå ŽåããããŸãã å Žåã«ãã£ãŠã¯ããã®ãããªã±ãŒã¹ãæ€åºããã«ãŒã«ãäœæããããããã³ãŒãå ã®äœããã®ãã°ã®ããç®æããã¹ãŠèŠã€ããŠä¿®æ£ããæ¹ãç°¡åãªå ŽåããããŸãã
- äŸåé¢ä¿ã®ãµããŒããäžè¶³ããŠããã 倧èŠæš¡ãªãããžã§ã¯ãã¯ãããã°ã©ãã³ã°èšèªã®æ©èœãæ¡åŒµããå€æ°ã®ã©ã€ãã©ãªãšãã¬ãŒã ã¯ãŒã¯ã«äŸåããŸãã ã¹ãã£ããŒã®ãã¬ããž ããŒã¹ã«ãããã®ãã¬ãŒã ã¯ãŒã¯ã®å±éºãªå Žæ (ãã·ã³ã¯ã) ã«é¢ããæ å ±ããªãå Žåãããã¯ç²ç¹ãšãªããã¹ãã£ããŒã¯ã³ãŒããç解ããããšããã§ããŸããã
- ã¹ãã£ã³æéã ã³ãŒãã®è匱æ§ãèŠã€ããããšã¯ãã¢ã«ãŽãªãºã ã®èŠ³ç¹ãããå°é£ãªäœæ¥ã§ãã ãããã£ãŠãããã»ã¹ãé 延ãã倧éã®ã³ã³ãã¥ãŒãã£ã³ã° ãªãœãŒã¹ãå¿ èŠã«ãªãå¯èœæ§ããããŸãã
- ã«ãã¬ããžãäœãã ãªãœãŒã¹ã®æ¶è²»ãšã¹ãã£ã³æéã«ãããããããSAST ããŒã«ã®éçºè ã¯äŸç¶ãšããŠåŠ¥åã«é Œãå¿ èŠããããããã°ã©ã ãåãåŸããã¹ãŠã®ç¶æ ãåæããããã§ã¯ãããŸããã
- åçŸæ§ãæ±ããŸãã è匱æ§ã«ã€ãªããç¹å®ã®è¡ãšã³ãŒã«ã¹ã¿ãã¯ãææããã®ã¯çŽ æŽãããããšã§ãããå®éã«ã¯ãã¹ãã£ããŒã¯å€éšã®è匱æ§ããã§ãã¯ããã®ã«ååãªæ å ±ãæäŸããªãããšããããããŸãã çµå±ã®ãšãããæ¬ é¥ã¯æ»æè ãå°éã§ããªããããã³ãŒãã«ãååšããå¯èœæ§ããããŸãã
ã€ã³ãã©ã¹ãã©ã¯ãã£ã®ã¹ãã£ã³ã®åé¡
- åšåº«ãäžè¶³ããŠããŸãã 倧èŠæš¡ãªã€ã³ãã©ã¹ãã©ã¯ãã£ãç¹ã«å°ççã«é¢ããã€ã³ãã©ã¹ãã©ã¯ãã£ã§ã¯ãã©ã®ãã¹ããã¹ãã£ã³ããããææ¡ããããšãæãé£ããããšããããããŸãã èšãæããã°ãã¹ãã£ã³ã®ã¿ã¹ã¯ã¯è³ç£ç®¡çã®ã¿ã¹ã¯ãšå¯æ¥ã«é¢é£ããŠããŸãã
- åªå é äœä»ããééã£ãŠããã ãããã¯ãŒã¯ ã¹ãã£ããŒã¯ãå®éã«ã¯æªçšã§ããªãæ¬ é¥ãå«ãå€ãã®çµæãçæããŸããã圢åŒçã«ã¯ãªã¹ã¯ ã¬ãã«ãé«ããªããŸãã æ¶è²»è ã¯è§£éãé£ãããæåã«äœãä¿®æ£ããå¿ èŠãããã®ãââãæ確ã§ã¯ãªãã¬ããŒããåãåããŸã
- 貧匱ãªæšå¥šäºé ã ã¹ãã£ããŒã®ãã¬ããž ããŒã¹ã«ã¯ãè匱æ§ãšãã®ä¿®æ£æ¹æ³ã«é¢ããéåžžã«äžè¬çãªæ å ±ããå«ãŸããŠããªãããšãå€ãããã管çè 㯠Google ã掻çšããå¿ èŠããããŸãã ãã¯ã€ãããã¯ã¹ ã¹ãã£ããŒã§ã¯ãç¹å®ã®ã³ãã³ããçºè¡ããŠä¿®æ£ã§ãããããç¶æ³ã¯ãããã«æ¹åãããŸãã
- æäœãã ã€ã³ãã©ã¹ãã©ã¯ãã£ã«ã¯å€æ°ã®ããŒããååšããå¯èœæ§ããããããã¯æœåšçã«å€ãã®æ¬ é¥ãååšããããšãæå³ããå埩ããšã«æåã§è§£æããã³åæããå¿ èŠãããæ¬ é¥ã«é¢ããã¬ããŒããäœæããå¿ èŠããããŸãã
- ã«ããŒåãæªãã ã€ã³ãã©ã¹ãã©ã¯ã㣠ã¹ãã£ã³ã®å質ã¯ãè匱æ§ãšãœãããŠã§ã¢ ããŒãžã§ã³ã«é¢ãããã¬ããž ããŒã¹ã®ãµã€ãºã«çŽæ¥äŸåããŸãã ãã®äžã§ã
ãããå€æ ãåžå ŽãªãŒããŒã§ããå æ¬çãªç¥èããŒã¹ãæã£ãŠããããç¡æãœãªã¥ãŒã·ã§ã³ã®ããŒã¿ããŒã¹ã«ã¯ãªãŒããŒãæã£ãŠããªãæ å ±ããããããããŸãã - ãããé©çšã«é¢ããåé¡ã ã»ãšãã©ã®å Žåãã€ã³ãã©ã¹ãã©ã¯ãã£ã®è匱æ§ãžã®ãããé©çšã¯ãããã±ãŒãžã®æŽæ°ãŸãã¯æ§æãã¡ã€ã«ã®å€æŽã§ãã ããã§ã®å€§ããªåé¡ã¯ãã·ã¹ãã ãç¹ã«ã¬ã¬ã·ãŒ ã·ã¹ãã ãæŽæ°ã®çµæãšããŠäºæãã¬åäœãããå¯èœæ§ãããããšã§ãã å®éã«ã¯ãæ¬çªç°å¢ã®ã©ã€ãã€ã³ãã©ã¹ãã©ã¯ãã£äžã§çµ±åãã¹ããå®æœããå¿ èŠããããŸãã
ã¢ãããŒã
ããã¯ã©ã®ããã«ããããšãã§ããŸããïŒ
次ã®ããŒãã§ã¯ããããã®åé¡ã®å€ãã®äŸãšå¯ŸåŠæ¹æ³ã«ã€ããŠè©³ãã説æããŸãããããã§ã¯ãäœæ¥ã§ããäž»ãªé åã瀺ããŸãã
- ããŸããŸãªã¹ãã£ã³ããŒã«ã®éåäœã è€æ°ã®ã¹ãã£ããæ£ãã䜿çšãããšãç¥èããŒã¹ãšæ€åºã®å質ãå€§å¹ ã«åäžããŸãã åå¥ã«å®è¡ãããã¹ãŠã®ã¹ãã£ããŒã®åèšãããããã«å€ãã®è匱æ§ãæ€åºã§ãããšåæã«ããªã¹ã¯ã®ã¬ãã«ãããæ£ç¢ºã«è©äŸ¡ããŠãããå€ãã®æšå¥šäºé ãäœæã§ããŸãã
- SAST ãš DAST ã®çµ±åã äž¡è éã§æ å ±ãå ±æããããšã§ãDAST ã«ãã¬ããžãš SAST ã®ç²ŸåºŠãé«ããããšãã§ããŸãã ãœãŒã¹ããæ¢åã®ã«ãŒãã«é¢ããæ å ±ãååŸã§ããDAST ã®å©ããåããŠãè匱æ§ãå€éšããèŠãããã©ããã確èªã§ããŸãã
- æ©æ¢°åŠç¿â¢ã 2015幎ã«ç§ã¯
ç§ã¯èšããŸãã ïŒãããŠãã£ãš ïŒçµ±èšã䜿çšããŠã¹ãã£ããŒã«ããã«ãŒã®çŽæãäžããã¹ãã£ããŒã®é床ãåäžãããããšã«ã€ããŠã ããã¯ééããªããå°æ¥ã®èªåã»ãã¥ãªãã£åæã®éçºã®ç³§ãšãªããŸãã - IAST ãšèªåãã¹ãããã³ OpenAPI ã®çµ±åã CI/CD ãã€ãã©ã€ã³å ã§ã¯ãHTTP ãããã·ãšããŠæ©èœããããŒã«ã HTTP äžã§æ©èœããæ©èœãã¹ãã«åºã¥ããŠã¹ãã£ã³ ããã»ã¹ãäœæã§ããŸãã OpenAPI/Swagger ã®ãã¹ããšã³ã³ãã©ã¯ãã¯ãããŒã¿ ãããŒã«é¢ããæ¬ èœæ å ±ãã¹ãã£ããŒã«æäŸããããŸããŸãªç¶æ ã§ã¢ããªã±ãŒã·ã§ã³ãã¹ãã£ã³ã§ããããã«ããŸãã
- æ£ããæ§æã ã¢ããªã±ãŒã·ã§ã³ãšã€ã³ãã©ã¹ãã©ã¯ãã£ããšã«ãã€ã³ã¿ãŒãã§ã€ã¹ã®æ°ãšæ§è³ªã䜿çšããããã¯ãããžãŒãèæ ®ããŠãé©åãªã¹ãã£ã³ ãããã¡ã€ã«ãäœæããå¿ èŠããããŸãã
- ã¹ãã£ããŒã®ã«ã¹ã¿ãã€ãºã å€ãã®å Žåãã¹ãã£ããŒãå€æŽããªããšã¢ããªã±ãŒã·ã§ã³ãã¹ãã£ã³ã§ããŸããã äŸãšããŠã¯ããã¹ãŠã®ãªã¯ãšã¹ãã«çœ²åããå¿
èŠãããæ¯æãã²ãŒããŠã§ã€ãæããããŸãã ã²ãŒããŠã§ã€ ãããã³ã«ãžã®ã³ãã¯ã¿ãäœæããªããšãã¹ãã£ãã¯ééã£ã眲åãæã€ãªã¯ãšã¹ããç¡æèã«ã€ã€ããŠããŸããŸãã ãŸãã次ã®ãããªç¹å®ã®çš®é¡ã®æ¬ é¥ã«ç¹åããã¹ãã£ããäœæããå¿
èŠããããŸãã
å®å šã§ãªãçŽæ¥ãªããžã§ã¯ãåç § - å±æ©ç®¡çã ããŸããŸãªã¹ãã£ããŒã®äœ¿çšãšãè³ç£ç®¡çãè åšç®¡çãªã©ã®å€éšã·ã¹ãã ãšã®çµ±åã«ãããè€æ°ã®ãã©ã¡ãŒã¿ãŒã䜿çšããŠãªã¹ã¯ã®ã¬ãã«ãè©äŸ¡ã§ããããã管çè ã¯éçºãŸãã¯ã€ã³ãã©ã¹ãã©ã¯ãã£ã®çŸåšã®ã»ãã¥ãªãã£ç¶æ ãé©åã«ææ¡ã§ããŸãã
泚ç®ããŠãè匱æ§ã¹ãã£ã³ãäžæããŸããã!
åºæïŒ habr.com