
çŸä»£ã®äžçã§ã¯ãäœããã®åœ¢ã§å°åã³ã³ãã¥ãŒã¿ãŒã衚ããã¹ããŒããããã€ã¹ã«å²ãŸããŠããŸãã å®¶é»ãã¹ããŒãããŒã ãå»çããã³éè¡æ©åšããšã³ã¿ãŒãã€ã¡ã³ãã·ã¹ãã ãç£æ¥æ©åšãªã©ãææ°ã®æ©åšãšã®çµ±åã®èгç¹ããããããã¯ãã¹ãŠçµã¿èŸŒã¿ã·ã¹ãã ïŒ
çµã¿èŸŒã¿ããã€ã¹ ïŒã§ãã
ã¹ããŒãã¬ãžã§ããã¯ç§ãã¡ã®ç掻ã«éåžžã«ç·å¯ã«çµ±åãããŠããã
ã€ã³ã¿ãŒãããçµç±ãªã©ãäœã³ã¹ããå©äŸ¿æ§ã䜿ããããããããã®æ°ã¯å¹Žã
å¢å ããŠã
ãŸã ã ãã ããå€ãã®ãã©ã¹ã®è£ã«ã¯é ããŠããçæããããå¹³åçãªãŠãŒã¶ãŒã«ã¯äžèŠããŠèŠããŸããã
NeoQUEST-2017 Confrontation
ã¬ããŒãã®1ã€ã§ ãåºç¯ãªã¯ã©ã¹ã®çµã¿èŸŒã¿ããã€ã¹ïŒIPã«ã¡ã©ïŒãæ€èšãããçµã¿èŸŒã¿ãœãããŠã§ã¢ãåæããäžè¬çãªã¢ãããŒããè°è«ãããŸããã ãã®èšäºã§ã¯ãã¡ãŒã«ãŒã䜿çšãã
Hikvision DS-2CD2432F-IWã«ã¡ã©ããã®ãã¡ãŒã ãŠã§ã¢ãããã³åã蟌ã¿ãšå€æŽããã®ä¿è·ã¡ã«ããºã ã®ç ç©¶ã«ã€ããŠè©³ãã説æããŸãã
ç¥äºº
Webã€ã³ã¿ãŒãã§ã€ã¹ã«ã¢ã¯ã»ã¹ããŠæ©èœã調ã¹ãŸãããœãããŠã§ã¢ããŒãžã§ã³ã確èªãããããã¯ãŒã¯ãµãŒãã¹ïŒSSHãSNTPãFTPãªã©ïŒãã¢ã¯ãã£ãã«ããŸãã ããªãå€ããã¡ãŒã ãŠã§ã¢5.3.0ãæèŒããã«ã¡ã©ãå
¥æããŸããã åœç¶ããã³ããŒã¯ããŒãžã§ã³ããšã«ãããã€ã¹ã®æ©èœã ãã§ãªãã»ãã¥ãªãã£ã®åé¡ã«ãããããåœãŠãŠããŸãã å·çæç¹ã§ã¯ããã®ã«ã¡ã©ã®
ææ°ãã¡ãŒã ãŠã§ã¢ã®ããŒãžã§ã³ã¯5.4.5ã§ãã
ã«ã¡ã©ããã©ã€ããããªã衚瀺ããã«ã¯ããã©ãŠã¶ãã©ã°ã€ã³ãå¿
èŠã§ãã ãã©ã°ã€ã³ã®1ã€ã¯ã«ã¡ã©èªäœã«ä¿åãããŠããŸã-ããŠã³ããŒãããŠãã ããããããã䟿å©ã§ãããã
SSHãä»ããŠããã€ã¹ã«æ¥ç¶ããçŸåšã®ã«ã¡ã©èšå®ã確èªããããç¬èªã®èšå®ãè¡ã£ãããWebã€ã³ã¿ãŒãã§ãŒã¹ãããããã€ã¹ã«é¢ããããå€ãã®æ
å ±ãåŠç¿ãããã§ããç¹å®ã®ã³ãã³ãã»ããã§
CLIã確èªããŸãã
ã³ãã³ãããã§ãã¯ãããããã®1ã€ã䜿çšããŠãOSãOSã«ãŒãã«ãããã»ããµã¢ãŒããã¯ãã£ããã¡ã€ã«ã·ã¹ãã ãRAMãµã€ãºãç©çã¡ã¢ãªããŒãã£ã·ã§ã³ãªã©ã«é¢ããæ
å ±ãèŠã€ããŸãã
æ
å ±æ€çŽ¢
ç ç©¶è
ã«ãšã£ãŠéèŠãªã¹ãã«ã¯ãæ
å ±ãæ€çŽ¢ããèœåã§ããçµå±ã®ãšããã誰ãããã§ã«ããªãã®åã«ãããè¡ã£ãŠããå¯èœæ§ãé«ãã§ãã å€ãã®è³ªåãžã®åçã¯ãããŒãå¥ãã©ãŒã©ã ãŸãã¯åã«æ€çŽ¢ãšã³ãžã³ã§èŠã€ããããšãã§ããŸãã ããšãã°ãããŸããŸãªã«ã¡ã©ãã¬ãžã¹ãã©ãªã©ã«ç¹åãã
ãã©ãŒã©ã ã«åå ããŸãã
å°ããµãŒãã£ã³ããŠãããã«æ·±ãããã©ãŒã«ã¹ã«ãŒãããæ¹æ³ã
èŠã€ããŠãã ãã ãã€ãŸããCLIãšãã¡ã€ã«ã·ã¹ãã ã®ãã«ãããã³ãã³ãã䜿çšå¯èœãªã«ãŒãã·ã§ã«ã§
èŠã€ããŠãã ããã
ã«ãŒãã·ã§ã«ã«ã¢ã¯ã»ã¹ããããšã§ãéããŠããããŒããšããã»ã¹ã®ãªã¹ããååŸãããããã¡ã€ã«ã·ã¹ãã ããå®è¡å¯èœãã¡ã€ã«ãæœåºããŠæ€æ»ããããç¬èªã®ãã¡ã€ã«ãèµ·åãããã§ããŸãã SDã«ãŒãã䜿çšããŠäž¡æ¹ãã€ã³ããŒã/ãšã¯ã¹ããŒãã§ããŸãã
ã«ã¡ã©ãç¥ã段éã§ããã
RS232ã¿ããWebã€ã³ã¿ãŒãã§ã€ã¹ã«è¡šç€ºãããŠããŸããã ãã®ã€ã³ã¿ãŒãã§ã€ã¹ã®äœ¿ç𿹿³ã«é¢ããã¹ã¬ããããã©ãŒã©ã ã«ããã«ç»å ŽããŸããã
UARTãã«ã¡ã©ã«æ¥ç¶ãã
minicomã«å¿
èŠãªãã©ã¡ãŒã¿ãŒãèšå®ããããšã«ãããã«ã¡ã©ã®èµ·åã®ãã°å
šäœãèªã¿åããããã€ã¹ã®èµ·åã忢ããããŒãããŒããŒã§ã倱æãããããšãã§ããŸãã ãã°ã¯éåžžã«å€§ãããèµ·åãããããã»ã¹ãåæ Œãããã§ãã¯ïŒãããŸã§ã®ãšããäžæïŒããšã©ãŒããã®ä»ã®ã·ã¹ãã æ
å ±ã衚瀺ãããŸãã
ããŒãèªäœãšãã®ã³ãã³ããåæ§ã«è峿·±ããã®ã§ãããŒã¿ãããã€ã¹ã®ç©çã¡ã¢ãªã«èªã¿æžãããããtftpãµãŒããŒçµç±ã§ã«ã¡ã©ãæŽæ°ãããïŒçªç¶ãã¬ã³ã¬ãã«å€ããå ŽåïŒãã«ã¡ã©ã®å
éšã«é¢ããããã«è©³çŽ°ãªæ
å ±ãååŸãããã§ããŸãã
ãã¡ãŒã ãŠã§ã¢æ§é
ããããŒ
ã«ã¡ã©èªäœã®å°ãã®ç ç©¶ã®åŸããã¡ãŒã ãŠã§ã¢ã€ã¡ãŒãžã®ç ç©¶ã«é²ã¿ãŸãã ã€ã¡ãŒãžãããŠã³ããŒãããŸãããã¡ãŒã ãŠã§ã¢ã¯æ¡åŒµåãã.davãã®äžæãªãã¡ã€ã«ã§ããããšã«æ³šæããŠãã ããã 16é²ãšãã£ã¿ã§äœããèŠãããšããŠããŸãã
ååãšããŠããã¡ãŒã ãŠã§ã¢ã€ã¡ãŒãžã¯ãã»ãšãã©ã®å Žåãã€ã¡ãŒãžèªäœããã³ãµããŒããããŠããããã€ã¹ã«é¢ããã¡ã¿ããŒã¿ãå«ãããããŒã§å§ãŸããŸãã åã®å³ãããã¿ã€ãã«ã«äŒŒããã®ãããããŸãã
binwalkãã¡ãŒã ãŠã§ã¢
ãã¡ã€ã«ãããã£ãŒããããŠã¿ãŸãããã æåã®ã13äžãã€ãã§ã¯äœãèŠã€ãããŸããã§ãããããã¯ããã®ãããã¯ãæå·åãããŠããå¯èœæ§ãé«ãããšã瀺ããŠããŸãã
ç§ãã¡ã¯ãã§ã«è¿°ã¹ããã©ãŒã©ã ããç
ãã«ããŠ
ãããã«åºããã
ãŸã ã ãã¡ãŒã ãŠã§ã¢ãã¡ã€ã«ã®ããããŒã¯ãå®éã«ã¯ãã€ãåäœã§æå·åãããŠããããšãããããŸãã ãããã¯æå·åã¯ãXORæäœã«åºã¥ããŠå®è£
ãããŸãã æäœããŒ=ãBA CD BC FE D6 CA DD D3 BA B9 A3 AB BF CB B5 BEãã åŸç¶ã®åxorã®åã«ãããŒã¯ãã€ãåäœã§åŸªç°çã«å·Šã«ã·ãããããŸãã ããããŒãè§£èªããããã®å°ããªã¹ã¯ãªãããäœæããŠããŸãã ãããŸã§ã®ãšãããçµæãšããŠãããããããã€ãã®ãã¡ã€ã«ã®ååãšæªç¥ã®ãã€ãã®ã»ãããååŸããŸãã

å©çšå¯èœãªæ
å ±ïŒç»åã®ãµã€ãºãšããŒãžã§ã³ãbinwalk`aãã°ãªã©ïŒãããããŒå
ã®äžæãªããŒã¿ãšæ¯èŒããŠã¿ãŸãããã ããšãã°ãbinwalkãæ€åºããç»åã®ãµã€ãºãŸãã¯.gzã¢ãŒã«ã€ãã®ãªãã»ããã確èªã§ããŸãã ãã€ãé ã«ãããã¯ãªãã«ãšã³ãã£ã¢ã³ã§ãããšçµè«ä»ããããšãã§ããŸãã
ããŒãã®æ®µéã§ããŠã³ããŒããããã©ãŠã¶ãã©ã°ã€ã³ãæãåºããŠãã ããã ãã®ååã¯ã¿ã€ãã«ã«è¡šç€ºãããŸãã å€äœåŸããã«ãç»åã«ãã®ãµã€ãºã衚瀺ãããŸãã
ãã¡ã€ã«ã«é¢é£ä»ããããæ§é ã«ã¯ããã¡ã€ã«åïŒ32ãã€ãïŒããã®ãªãã»ããïŒ4ãã€ãïŒãããã³ãµã€ãºïŒ4ãã€ãïŒãå«ãŸããããšã¯æ¢ã«ç¥ãããŠããŸãã ããã«4ãã€ãã®æ
å ±ã¯ãæ¬¡ã®æ§é ãŸã§äžæã®ãŸãŸã§ãã ããã¯ã»ãšãã©ã®å Žåãã§ãã¯ãµã ã§ãã ã©ã®ã¢ã«ãŽãªãºã ã§èšç®ãããã®ãã¯äžæã§ãã é·ãã4ãã€ããããªããããããã¯äžè¬çãªããã·ã¥é¢æ°ïŒMD5ïŒïŒãSHA *ïŒïŒïŒã®çµæã§ã¯ãªããšèšãããšãã§ããŸãã CRC32ïŒïŒã䜿çšãããŠãããšæ³å®ã§ããŸãã 詊ããŠã¿ãŸã-éãåæããŸããã
ããã€ãã®ä»®å®ã®åŸãå¥åŠãªäŸåé¢ä¿ãèŠã€ãããŸããããã¡ã€ã«ãµã€ãºã倧ãããªããšããã§ãã¯ãµã ã倧ãããªããŸãã ããã«ããããã¡ã€ã«ã®1ã€ã«é£ç¶ããŠãã€ãã远å ããããã«ãªããŸããã å®éããã§ãã¯ãµã èšç®ã¢ã«ãŽãªãºã ã¯éåžžã«åçŽã§ããããã€ããé æ¬¡è¿œå ãããŸãã åæ§ã«ãããããŒãã§ãã¯ãµã ãèšç®ãããŸããããããŒãã§ãã¯ãµã ã¯ããµã€ãºã®é£ã®æåã«é
眮ãããŸãã
埩å·åãããããããŒã«ã¯æ¬¡ã®æ
å ±ãå«ãŸããŸãã
- ã€ã¡ãŒãžèªäœã«ã€ããŠïŒããŒãžã§ã³ãã¢ã»ã³ããªããµã€ãºã«ã€ããŠã
- ããã€ã¹ã«ã€ããŠ;
- ãã¡ãŒã ãŠã§ã¢å
ã®ãã¡ã€ã«ã«ã€ããŠïŒååããªãã»ããããµã€ãºããã§ãã¯ãµã ã
詳现ãªèŠåºãæ§é ã¯æ¬¡ã®ãšããã§ãã
ããããŒæ§é ãå®å
šã«ããã£ãã®ã§ãããããŒãè§£æããã€ã¡ãŒãžãåå¥ã®ãã¡ã€ã«ã«å§çž®è§£é€ããã¹ã¯ãªãããæžãããšã¯é£ãããããŸããïŒèšäºã®æåŸã«ãå
ã®ãã¡ãŒã ãŠã§ã¢ã€ã¡ãŒãžãè§£åããŠæ°ããã€ã¡ãŒãžãäœæããããã°ã©ã ã®ãœãŒã¹ãžã®ãªã³ã¯ïŒïŒã ãããŠãããã§ããããæ³šææ·±ãç ç©¶ããŸãïŒ
hroot.img
ã€ã¡ãŒãžã®äžéšã§ãããã¡ã€ã«ã調ã¹ãŸãã äžéšã®äºå®ã«ã€ããŠã¯ååããæ¢ã«æããã§ãããæ®ã£ãŠããã®ã¯çŸæç¹ã§æšæž¬ããããšã ãã§ã...æ¡åŒµåãã.imgãã®ãã¡ã€ã«ãããã«ç®ãåŒããŸããããã¯ããããããã¡ã€ã«ã·ã¹ãã ã®ã€ã¡ãŒãžã§ãã ããã«ããŠã³ãã§ããŸããã binwalkãããã£ãŒããããŠã.gzãã¢ãŒã«ã€ãã衚瀺ããŸããã64ãã€ãã®ã¿ã§ãããç»åã«ã¯ç¬èªã®ããããŒããããŸãã
ååãšããŠããã¡ã€ã«ã·ã¹ãã ã®ã€ã¡ãŒãžã®ããããŒã«ã¯ãã€ã¡ãŒãžã®ãã§ãã¯ãµã ããµã€ãºãããã³ããã€ã¹ã®RAMã®ããŒãã¢ãã¬ã¹ãå«ãŸããŸãã ç§ãã¡ã®å ŽåãCRC32ãã§ãã¯ãµã ïŒïŒã ãããžãã¯ãã€ããKDMRïŒRMDKãramdisk magicïŒã远å ãããŸããã æ®ãã®ããããŒãã€ãã¯ãŒãã§åããããŸãã
initrun.sh
ãã§ã«ååã§ãããã€ã¹ã®é»æºããªã³ã«ãªã£ããšãã«ã¹ã¯ãªãããèµ·åããããšæ³å®ã§ããŸãã 調æ»ããçµæãå¿
èŠãªãã£ã¬ã¯ããªã®äœæãã¢ãŒã«ã€ãã®ã¢ã³ããã¯ããã¡ã€ã«ã®ã³ããŒããã€ããªãã¡ã€ã«ã®èµ·åãäžèŠãªãã¡ã€ã«ã®åé€ãã«ãŒãã«ã¢ãžã¥ãŒã«ã®ããŒããå¿
èŠãªããŒãã£ã·ã§ã³ã®ããŠã³ããã·ã³ããªãã¯ãªã³ã¯ã®äœæãè¡ãããããšãããããŸãã-ãããã¯ãã¹ãŠRAMã§çºçããŸãã
davinci.tar.gz
lib_so.tar.gz-åçã©ã€ãã©ãªãå«ãã¢ãŒã«ã€ãã¯ç®ç«ããªãããã«èŠããŸãããã©ã€ãã©ãªå
ã®ã¢ãŒã«ã€ãå
ã§ã¯ãå®è¡å¯èœãã€ããªãã¡ã€ã«daemon_fsp_appã倱ãããŸããã ãã®ã¢ãŒã«ã€ãã«çœ®ãããã®ã¯å¥åŠã§ãããæ®ãã®ãã€ããªã¯ç»åå
ã®æ®ãã®ãã¡ã€ã«ãšé£çµãããã ãã§ãã ãŸãããããå
ã«æ»ãå¿
èŠããããŸãïŒ
ãã®ãã€ããªãã¡ã€ã«ã¯ããã¡ãŒã ãŠã§ã¢å
ã®ãã¡ã€ã«ã®1ã€ã§ããdavinci.tar.gzã埩å·åãéå§ãããã³åé€ããããã»ã¹å
ã§ãã³ã°ããããŸãŸã«ããããšã倿ããŸããã ããã¯æãè峿·±ããã¡ã€ã«ã§ã-ããã€ã¹ã®åºæ¬çãªããžãã¯ãå®è£
ããdavinciæå·åãããå®è¡å¯èœãã¡ã€ã«ã WebãµãŒããŒãã管çãããæ°ãããã¡ãŒã ãŠã§ã¢ã®ã€ã³ããŒããããã€ã¡ãŒãžããã§ãã¯ããŸãã
ãã¡ã€ã«ã®ãã§ãã¯ãµã ããããã®ãªãã»ãããšãµã€ãºããã¡ãŒã ãŠã§ã¢å
ã®ãã¡ã€ã«æ°ãã€ã¡ãŒãžã®ãµã€ãºãšãã®ããŒãžã§ã³ãäºææ§ã®ããããã€ã¹ã®ã¯ã©ã¹ãããããŒã®ãã§ãã¯ãµã ãšãµã€ãºããã¡ã€ã«ã·ã¹ãã ã€ã¡ãŒãžã®ããããŒããããŠãã¡ãããããžãã¯ãã€ããããã§ãã¯ãããŸãã åãã¡ã€ã«ã®æ§é ãåæããå Žåããããã®ãã§ãã¯ãåé¿ããããšã¯ããã»ã©é£ãããããŸããã ããã«ãããã€ã¡ãŒãžã倿Žããããç¬èªã®ã€ã¡ãŒãžãäœæãããã§ããŸãã
è£œé æ¥è
ã¯davinciãå§çž®ãããtar.gzã¢ãŒã«ã€ããšããŠåœè£
ããŸããããå®éã«ã¯ãŸã£ããç°ãªãå
¥ãå人圢ããããŸãïŒäžå³ãåç
§ïŒã ãã€ããªãã¡ã€ã«ã¯tarã¢ãŒã«ã€ãã«ããã¯ãããlzmaã¢ã«ãŽãªãºã ã䜿çšããŠå§çž®ãããAES察称ãããã¯æå·åã¢ã«ãŽãªãºã ã䜿çšããŠæå·åãããŸãããããã¯ãµã€ãº-128ããããããŒãµã€ãº-256ããããæå·åã¢ãŒã-ECBãããã³ãããžãã¯ãã€ãã埩å·åäžã«ãã§ãã¯ãããŸãã
æå·åããŒã¯
EVP_BytesToKeyïŒïŒããŒçæé¢æ°ã䜿çšããŠçæãããŸããMD5ïŒïŒã¯2ã€ã®ãã¹ã§äœ¿çšããããã¹ãã¬ãŒãºã¯ãR0sslV53cryptor0ãããœã«ãã¯ãHangZhouãã§ãã ããŸããŸãªã¯ã©ã¹ãšäžé£ã®ããã€ã¹ã§ã¯ããã®ããŒã¯ç°ãªããŸãã調ã¹ãŠããã«ã¡ã©ã®ã·ãªãŒãºã¯R0ã§ãã
_cfgUpgSecPls
ãã¡ã€ã«ã¯davinciãã€ããªãã¡ã€ã«ãšåãæ¹æ³ã§æå·åãããŸãããæå·åããŒãç°ãªãã ãã§ã埩å·åã¯davincièªäœã«ãã£ãŠãã§ã«è¡ãããŠããŸãã ããŒã¯ãå¥ã®ãã¹ãã¬ãŒãºã䜿çšããŠçæãããããããh @ k8807H $ Z5998ããšç°ãªããŸãã ãHangZhouããœã«ããšåãå Žæã§ãdavinciãã€ããªãã¡ã€ã«ã®ãå
éšãã«ãããŸãã
次ã®å³ã«ç€ºã埩å·åããããã¡ã€ã«ã®æ§é ã«ããã°ãããã¯2çªç®ã®ç»åããããŒã§ãããšèšããŸããã¡ã¿ããŒã¿ããã¡ã€ã«åããªãã»ããããµã€ãºããã§ãã¯ãµã ãå«ãŸããŠããŸãã äž»ãªéãã¯ãã§ãã¯ãµã èšç®ã¢ã«ãŽãªãºã ã§ã-ããã«éåžžã®SHAïŒïŒïŒSHA1ïŒïŒããã³ä»ã®SHAïŒïŒã¢ã«ãŽãªãºã ãšæ··åããªãã§ãã ããïŒãšããã¡ã€ã«èªäœã®æå·åã¢ã«ãŽãªãºã ããããŸãã ãã®ãã¡ã€ã«ã¯ãããããŒãšåæ§ã«ãdavinciã«ãã£ãŠãã§ãã¯ãããŸãã
ç»åå
ã®æ®ãã®ãã¡ã€ã«ã¯ãäžèšã»ã©è峿·±ããã®ã§ã¯ãããŸããã ãããã®ç°¡åãªèª¬æã以äžã®è¡šã«ç€ºããŸãã
ç»åå
ã®ãã¡ã€ã«ã®èª¬æ æ²ããçµæãèŠçŽããã«ã¯...
äœãèšããŸããïŒ ã»ãšãã©ã®çµã¿èŸŒã¿ããã€ã¹ã¯äžåœã§è£œé ãããŠãããã¡ãŒã«ãŒã¯ããã°ã©ããŒãšããŒããŠã§ã¢ã®äœæ¥ãç¯çŽããããšããŠããŸãããã®çµæããã®ããŒããŠã§ã¢ã®èšç®ãªãœãŒã¹ã¯éåžžã«éãããŠããŸãã ãã®çµæãå
ã®ãœãããŠã§ã¢ã®å€æŽïŒãŸãã¯å®å
šãªäžåšïŒãé²ãããã®ã»ãã¥ãªãã£ã¡ã«ããºã ã®å®è£
ãäžååã§ããã
ããã«ãè£œé æ¥è
ã¯ç¬ç«ããŠ
ããã¯ãã¢ã眮ãããšãã§ããŸãã ãŸããã¹ããŒããã£ãŒãããã®ãããã³ã°ãéå€§ãªæå®³ãäžããå¯èœæ§ãäœãå ŽåïŒããã¯ã
æœåšçã«ã¹ããŒããã£ãŒãããããã³ã¿ãŽã³ã®ãµã€ããã眮ããããšãã§ãããšãã䞻匵ã«åºã¥ããŠè°è«ã§ããŸããïŒãããéèŠãªçµã¿èŸŒã¿ã·ã¹ãã ãžã®æ»æã¯æ·±å»ãªçµæãæãå¯èœæ§ããããŸãçµæã
ã»ãšãã©ã®ããã€ã¹ã®èªåæŽæ°ã®æ¬ åŠã¯ããã®å®å
šæ§ãå®å
šã«æãªããŸããæ®éã®äººã¯ãå人ã«åœ±é¿ãäžãããã誰ããããã«ã€ããŠè©±ããŸã§ãæ
å ±ã»ãã¥ãªãã£ã®åéã®ãã¥ãŒã¹ããã©ããŒããŸããã 䞻婊ãäžåœã®ãµã€ãããã«ã¡ã©ã®æ°ãããã¡ãŒã ãŠã§ã¢ãããŠã³ããŒãããããšã¯ãŸããããŸããã
ããã€ã¹ã¯äœå¹ŽãæŽæ°ãããªãå ŽåããããŸãã ãã®çµæãæ»æè
ã¯ããç ç²è
ãã®å¹³å¡ãªç£èŠãã
ããããããã®äœæãŸã§ãå人çãªå©çã®ããã«ã¢ã¯ã»ã¹å¯èœãªæãç©ŽãæªçšããŸãã
å°æ¥çã«ã¯ãã¡ãŒã«ãŒã補åã®å®å
šæ§ã«ãã£ãšè²¬ä»»ãæã¡ããããç§ãã¡ã®ç掻ã«ãŸããŸã泚ãããŠããããšãé¡ãã ãã§ããããšãã°ã
é»åããžã¿ã«çœ²åãªã©ã®ãœãããŠã§ã¢ã®å€æŽã眮æããããããä¿è·ããããã®ææ°ã®ä¿¡é Œã§ããã¡ã«ããºã ãå°å
¥ã
ãŸã ã
PS
調æ»äžã«ã
å
ã®ãã¡ãŒã ãŠã§ã¢ã€ã¡ãŒãžã
è§£åãã Pythonã§
æ°ããã€ã¡ãŒãžã
äœæããããã°ã©ã ãäœæãããŸããã ã¢ã³ããã«ãŒã¯ãã€ã¡ãŒãžãã³ã³ããžã·ã§ã³ã«å«ãŸããåå¥ã®ãã¡ã€ã«ã«åå²ããŸãã ã¢ã»ã³ããªã¯ãããã€ã¹ãžã®ããŠã³ããŒãæã«ãã§ãã¯ããããããã®ãã£ãŒã«ããèæ
®ããŸããããã«ãããã€ã¡ãŒãžå
ã®ãã¡ã€ã«ãïŒã€ã¡ãŒãžã«æ°ãããã¡ã€ã«ã远å ããã«ïŒå€æŽããæ°ãããã¡ãŒã ãŠã§ã¢ãã¡ã€ã«ãã¢ã»ã³ãã«ã§ããŸãã ã¢ã»ã³ããªã«ã¯ãå±éãããã€ã¡ãŒãžãå¿
èŠã§ãã