pixivã®ã¤ã³ã¿ã¼ã³ã«è¡ã£ã¦ãã°ã¨æ¦ã£ã¦ãã
ããã«ã¡ã¯.ãããã§ã.å»ã12/12, 13ã¯pixivã§ãã°åãã¤ã³ã¿ã¼ã³ã«åå ãã¦ãã¾ãã.
ãã®ã¤ã³ã¿ã¼ã³ã·ããã«åå ããããã«ã¯ã¾ãäºå課é¡ã解ããããGitHubã®ãã«ãªã¯ã¨ã¹ãã使ã£ã¦æåºããã¨ãããªããªããªãå½¢å¼ã®ãã®ã§ãã.
äºå課é¡
GitHubã«ãããã®èª²é¡ã解ãã¾ãã.PHPã§æ¸ããã¦ãã¾ãããæ¯è¼çèªã¿ãããåãããããã£ãã®ã§ããPHP7ã®å
¥ã£ãVagrantããã±ã¼ã¸ããªããªãéã£ã¦ããªãã£ãããèªåã§Ubuntuã®Vagrantããã±ã¼ã¸ãä½æããã®ä¸ã«ç°å¢ãæ´ãã¦èª²é¡ã«åãçµã¿ã¾ãã.PHPã使ãã«ã¯ApacheãNginxã¨ãã£ããã®ã«PHP FPMãªã©ã使ã£ã¦æ§æããã®ãå½ããåã ã¨æã£ã¦ããã®ã§ããphp -S
ã¨ããã³ãã³ãã使ãã°ãã®ãããªãã®ã使ããã¨ããµã¼ãã¼ã¨ãã¦åãã¦ãããã®ã¯ç¥ããã³ã£ãããã¾ãã.
ãããªãããªã§ã³ã¼ããèªãã§ããã¨ä»¥ä¸ã®æ§ãªãã°ãããè¦ã¤ãããã¨ãåºæ¥ã¾ãã.
- XSS
- SQLã¤ã³ã¸ã§ã¯ã·ã§ã³
- GETã§ãã¹ã¯ã¼ãçãéä¿¡ãã¦ãã
- ãã¹ã¯ã¼ããçã§ä¿å
- CSRF
ãããªç¶ºéºãªã³ã¼ããæ¸ãããã ããèå¼±æ§æ®ããªãã£ã¦æãã§ã.ã¾ãã¾ããªæéãããã¦æåºç· ãåãã®1æ¥åãããã«ãã«ãªã¯ã¨ã¹ããéãã¾ãã.
解ãã¦æãã¾ãããWebã»ãã¥ãªãã£ã®åºç¤ã¨ãã¦å¾³ä¸¸æ¬ãèªãã§ãã¦ãå®éã«æãåãããªãã¨ç¥èã¯èº«ã«ã¤ããªãã¨æãã¾ã.ç§èªèº«CSRFã®èå¼±æ§ã«ã¤ãã¦ã¯ç¥èã¯æã£ã¦ãã¾ãããã©ã®ããã«å®è£ ããã°èå¼±æ§ãåé¿ã§ããã®ããªã©è©³ç´°ãç¥ãã¾ããã§ãããä»åã®èª²é¡ãéããã¡ãã¨ç解ãããã¨ãã§ãåå¼·ã«ããªãã¨æãã¾ã.ããWebã»ãã¥ãªãã£ã«èå³ã®ãã人ãããã°ãã®èª²é¡ã解ãã¦ã¿ãã®ãè¯ãããããã¾ãã.
ã¤ã³ã¿ã¼ã³
æåã«åå è ã¨ã¡ã³ã¿ã¼ã§èªå·±ç´¹ä»ã1åã§è¡ãã¨ããã®ãããã¾ãã.ã¡ã³ã¿ã¼ãããæåã®èªå·±ç´¹ä»ã§ã好ããªLispã¯...ãã¨è¨ãå§ããã®ããã£ããã§ã¿ããªLispãåãä¸ããã好ããªã¨ãã£ã¿ãè¨èªãªã©ã好ã好ãã«è¡ã£ã¦ããã®ã§é常ã«é¢ç½ãã£ãã§ã.ã¾ãåå è ã«ã¯VimmerãEmacserããã¾ãããæ¦äºãèµ·ãããã¨ããªãã¿ããªä»²è¯ãã£ãã§ãw
ãã¦,å½æ¥ã¯pixivã®åæ¥12:00é ã¹ãããã·ã§ãããæ®ã£ãæ¬å½ã®ã½ã¼ã¹ã³ã¼ãã«ãããã°ã¨æ¦ãã¾ãã.åå ããã¾ã§ã¯æå³çã«æ··å ¥ããããããããæ¬ä¼¼çãªãã®ã®ã³ã¼ãå ã«ãããã°åãããããã®ã ã¨æã£ã¦ããã®ã§æ¬ç©ã®ã³ã¼ãã触ãã¨ã¯æã£ã¦ãè¦ã¾ããã§ãã.ãã°èªä½ã¯15åç¨åº¦ãã,ç°¡åãªãã®ãã2æ¥éã§ã¯ã¾ã解ããªãã ããã¨ã¡ã³ã¿ã¼ããããã£ãããã¬ãã«ã®ãã®ã¾ã§åãæãããã¦ãã¾ãã.ç§ã¯å ¨é¨ã§5åã»ã©è§£æ±ºãã¾ããããã¹ã¦ç°¡åãªãã®ã ã£ãã®ã§ã¾ã ã¾ã ç²¾é²ã足ããªããªãã¨ãã£ãæãã§ã.ã¾ãç§ã¯æããã£ã¦ãããããã«ãªã¯ãåãè¾¼ã¾ããã®ãé ããã¼ã¸ããããã¨ã¯ããã¾ããã§ãããä»ã®ã¤ã³ã¿ã¼ã³çã®éãåºãããã®ããµã¼ãã¹ã«åãè¾¼ã¾ãããããªã®ã§ç¾¨ã¾ããã§ã.ãã®ã¤ã³ã¿ã¼ã³ã§å¦ãã ãã¨ã¯ä½äºãæ©ãè åã¡ã¨ãããã¨ã§ã.社ä¼ã¯å³ããã§ãã.
ç°å¢
ç°å¢èªä½ã¯éçºãµã¼ãã¼ã«SSHã§ãã°ã¤ã³ãã¦pixiv社å ããã¢ã¯ã»ã¹ã§ããã¨ããä»çµã¿ã§ãã.以ä¸ã®è¨äºããã£ã¡ã詳ããã§ã.
åºæ¬çã«ã¯ãªã¢ã¼ããµã¼ãã¼ä¸ã«ãããã¡ã¤ã«ãããããªãã¨ãããªãã®ã§ç§ã¯Emacsã®tramp-modeã使ã£ã¦ãã¾ãã.(Emacsæé«!)
ããæ¥å¹´ä»¥éåå ããæ¹ãããã°SSHçµç±ã§ãã¡ã¤ã«ãç·¨éã§ããç°å¢ãæ§ç¯ãã¦ããã¨æãã¨æãã¾ã!
ãã¨ãªãã£ã¹ç°å¢ããã¡ããã¡ãè¯ãã£ãã§ã.ããªã¼ããªã³ã¯,ããªã¼å³åæ±ã§ããw
pixivåç©çµµé¦¬
æé«ã§ãã.ç§ã2次å ã«å²ã¾ãã¦ä»äºãããã§ã.
ææ³
楽ããã£ãã§ã.(ã´ãæ¥æ¬èªå) ã¡ã³ã¿ã¼ãããä»ã®ã¤ã³ã¿ã¼ã³çã®ã¬ãã«ãé«ãåºæ¿ããã¾ãã.èªåã«ã¯ã¾ã 足ããªããã¨ãè¦ã¤ããã¾ããããããããç²¾é²ãã¦ããããã¨æãã¾ã.
ãã¨ãã£ã¡ãã©ãã§ãããã§ããèªåãGitHubã«ãã°ã¤ã³ãã¦ããæã ãpixivã«æå±ãã¦ãããµãã«è¡¨ç¤ºãããã®ãå¬ããã§ã.