Python ¶Â´U¤l¡G¶Â«È»Pº¯³z´ú¸Õ½sµ{¤§¹D ( ²Åé ¦r) |
§@ªÌ¡GJustin Seitz | Ãþ§O¡G1. -> µ{¦¡³]p -> Python ¡@¡@¡@2. -> ¦w¥þ -> ºô¸ô¦w¥þ -> Àb«È§ðÀ»»P¤J«I |
ĶªÌ¡G®]ªQ¬f,§õÁo,¼í¬î |
¥Xª©ªÀ¡G¹q¤l¤u·~¥Xª©ªÀ | 3dWoo®Ñ¸¹¡G 54617 ¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I¡i¦³®w¦s¡j NT°â»ù¡G 395 ¤¸ |
¥Xª©¤é¡G6/1/2021 |
¶¼Æ¡G204 |
¥úºÐ¼Æ¡G0 |
|
¯¸ªø±ÀÂË¡G |
¦L¨ê¡G¶Â¥Õ¦L¨ê | »y¨t¡G ( ²Åé ª© ) |
|
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R (½Ð¥ýµn¤J·|û) |
ISBN¡G9787121266836 |
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç |
(²Åé®Ñ¤W©Òz¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, YŪªÌ»Ýn½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ) |
§@ªÌ§Ç¡G |
ĶªÌ§Ç¡G |
«e¨¥¡GĶ ªÌ §Ç
²@µLºÃ°Ý¡A¦b¸}¥»»y¨¥ªº¥@¬É¨½¡A Python ¤w¸gÅܱo¨¬°÷±j¤j¥B¬y¦æ¡C³o¤£¶È¬O¦]¬° Python ²½mªº»yªk·®æ©M«D±`°ªªº¶}µo®Ä²v¡AÁ٥Ѥ_ Python ¾Ö¦³³Ì¬¡ÅDªº¶}µoªÀ°Ï©M¼Æ¶qÃe¤jªº²Ä¤T¤è®w¡C¥Î Python ½s¼gªº¥N½Xµu¤p¦Óºë¤z¡A¶V¨Ó¶V¦hªº§Þ³N¤Hû¶}©l¨Ï¥Î Python §@¬°²Ä¤@»y¨¥¶i¦æ½sµ{¡C
¦bº¯³z´ú¸Õªº¹Lµ{¤¤¡A§ÚÌ¥i¯à±¹ï«D±`´_Âøªººôµ¸Àô¹Ò¡A¨ä¤¤¥ô¦ó¤@ÓÀô¸`³£¥i¯à¬O§Ú̪º¬ð¯}ÂI¡C³o¤£¶Èn¨D§ÚÌ¥þ±´x´¤¦UºØ¨t²Î©MÀô¹ÒªºÁ¡®zÀô¸`¡AµM¦Z¨Ï¥Î¤u¨ã©ÎªÌ½sµ{¶i¦æ´ú¸Õ¡A¦Ó¥Bn¨D§Ú̦³§Ö³t³B²z©MÆF¬¡À³Åܪº¯à¤O¡C¯S§O¬O¦b¤À¬í¥²ª§ªº CTF ÄvÁɤ¤¡A§Ö³t½s½Xªº¯à¤OÅã±o¤×¬°«n¡C¨Ï¥Î Python ¯à«Ü¦n¦aº¡¨¬³o¨Çn¨D¡C
¥»®Ñ¬OºZ¾P®Ñ Gray Hat Python¡]¡mPython ¦Ç´U¤l¡X¶Â«È»P°f¦V¤uµ{®vªºPython ½sµ{¤§¹D¡n¡^ªº©n©f½g¡C¦b¨º¥»®Ñ¤¤¡A§@ªÌ¤¶²Ð¤F Python ¦b°f¦V¤uµ{©Mº|¬}«õ±¸¤è±ªº±j¤j¥\¯à¡F¦Ó¦b¥»®Ñ¤¤¡A§@ªÌ¤¶²Ð¤F Python ¦p¦ó³Q¥Î¦b¶Â«È©Mº¯³z´ú¸Õªº¦UÓ»â°ì¡A±q°ò¥»ªººôµ¸±½´y¨ì¼Æ¾Ú¥]®·Àò¡A±q Web ª¦ÂΨì½s¼gBurp ÂX®i¤u¨ã¡A±q½s¼g¤ì°¨¨ìÅv´£¤Éµ¥¡C§@ªÌ¬O¤@¦ì¸gÅç«D±`Â×´Iªº¦w¥þ¤u§@¤Hû¡A¥Lµ²¦X¦Û¤v¦b¤u§@¤¤¸g±`¸I¨ìªº°ÝÃD¡B¸g±`»Ýn¨Ï¥Îªº¤u¨ãµ¥¡A¹B¥Î¤j¶qªº¹ê¨Ò¦V§ÚÌ®i¥Ü¦p¦ó»´ªQ¦a¨Ï¥Î Python ¨³³t¡B°ª®Ä¦a½s¼g²Å¦X§ÚÌn¨Dvi Python ¶Â´U¤l¡G¶Â«È»Pº¯³z´ú¸Õ½sµ{¤§¹Dªº¤u¨ã¡C°£¤F¤@¨Ç°ò¥»ªº Python ½sµ{§Þ¯à¡A¦p¨Ï¥Î Socket ½s¼g«È¤áºÝ»PªA°ÈºÝ¡B¨Ï¥Îì©l®M±µ¦r©M Scapy ®w¶i¦æ¶å±´¡A§@ªÌ¦b¥»®Ñ¤¤ªº«Ü¦h¹ê¨Ò³£«D±`¨ã¦³³Ð·s©M±Òµo·N¸q¡C¨Ò¦p¡A HTTP ¼Æ¾Ú¤¤ªº¹Ï¤ùÀË´ú¡A°ò¤_ GitHub ¶i¦æ©R¥O©M±±¨îªº¼Ò¶ô¤Æ¤ì°¨¡AÂsÄý¾¹ªº¤¤¶¡¤H§ðÀ»§Þ³N¡A§Q¥Î COM ²Õ¥ó¦Û°Ê¤Æ§Þ³NÅѨú¼Æ¾Ú¡A³q¹L¶iµ{ºÊµø©M¥N½X´¡¤J¹ê²{Åv´£¤É¡A ³q¹L¦VµêÀÀ¾÷¤º¦s§Ö·Ó¤¤´¡¤Jshellcode ¹ê²{¤ì°¨¾n¯d©MÅv´£¤Éµ¥¡C³q¹L¾\Ū¥»®Ñ¡AŪªÌ¤£¶È¯à¾Ç¨ì¦UºØPython ®wªºÀ³¥Î©M½sµ{§Þ³N¡AÁÙ¯à©Ý¼eµø³¥¡A°ö¾i©MÁë·Ò¦Û¤vªº¶Â«È«äºû¡A³o¨Ï±oŪªÌ¦b¾\Ū¥»®Ñªº¹Lµ{¤¤¤£·|·Pı¦p¾\Ū´¶³q§Þ³N®ÑÄy¨º¼Ëªº¬\Àê©M¥F¨ý¡C
¦P®É¡A§@ªÌ¦b¤j³¡¤À¹ê¨ÒªºÁ¿¸Ñ¹Lµ{¤¤¡A«ü©ú¤F¤u¨ã»Ýn¶i¤@¨B©Ý®i©M§¹µ½ªº¦a¤è¡A¦}±N³o¨Ç¤u§@¥¬¸m¬°®a®x§@·~¡C§Ú«ØijŪªÌ«ö·Ó§@ªÌªºn¨Dקï©M§¹µ½³o¨Ç¤u¨ã¡A¦]¬°³oÓ¹Lµ{¤£¶È¯àÀò±o¹ï¤w¾Çª¾ÃѪº¾d©T©M´£¤É¡AÁÙ¯àÀò±oº¡º¡ªº¦¨´N·P¡I
¦bºôµ¸¦w¥þ»â°ì¡A§Ú̳q±`±N¥uÀ´±o¨Ï¥Î¤w¦³¤u¨ãªº¶Â«ÈºÙ¬°¡§¸}¥»¤p¤l¡¨¡C
²{¦b¡A¦³¤F¥»®Ñ¡Aµy¥[¾Ç²ß©M¹B¥Î¡A§A´N¯à½s¼g¥X¥\¯à¨¬°÷±j¤jªº¤u¨ã¡C»°ºò¦æ°Ê°_¨Ó¡AÂ\²æ³oÓ±a¦³ª[µø©Ê½èªººÙ©I§a¡I
¥»®ÑªºÂ½Ä¶¤À¤u¦p¤U¡G®]ªQ¬f½Ķ«e¨¥¡B²Ä 1 ³¹¡B²Ä 2 ³¹¡B²Ä 5 ³¹©M²Ä 6³¹¡F§õÁo½Ķ²Ä 3 ³¹¡B²Ä 4 ³¹¡B²Ä 7 ³¹©M²Ä 8 ³¹¡F¼í¬î½Ķ²Ä 9 ³¹¡B²Ä 10 ³¹©M²Ä 11 ³¹¡C²Ä 1 ³¹¡B²Ä 2 ³¹¡B²Ä 6 ³¹¡B²Ä 9 ³¹©M²Ä 10 ³¹¥Ñ§õÁot³d¼f¾\¡A²Ä3 ³¹¡B²Ä 4 ³¹©M²Ä 11 ³¹¥Ñ®]ªQ¬ft³d¼f¾\¡A¼í¬î¼f¾\²Ä 5³¹¡B²Ä 7 ³¹¡B²Ä 8 ³¹¡C¥»®ÑªºÂ½Ä¶¤u§@¥Ñ®]ªQ¬ft³d²Õ´©M²ÎÄw¡C
¥Ñ¤_¤ô¥¦³¡A½Ķ¤¤Ãø§K¥X²{¤@¨Ç¿ùº|©Mªí¹F¤£·Ç½Tªº¦a¤è¡AÀµ½ÐŪªÌ§åµû«ü¥¿¡C
§õÁo
2015 ¦~ 5 ¤ë¤_¼sªF
±ÀÂ˧Ǥ@
·PÁ®]ªQ¬fÁܽЧڴ£«e¾\Ū¦¹®Ñ¡A³o¥»®ÑŪ°_¨Ó«Ü¶¶ºZ¡AÂл\¤F¶Â«È©Îº¯³z®v±`¥Îªº«Ü¦h§Þ¥©¡C³o¥»®Ñªº¯SÂI¬O¡AåªR§Þ¥©ªº¥»½è¡AµM¦Z¥ÎPython ªº¤º¸m¼Ò¶ô©ÎÀu¨qªº²Ä¤T¤è¼Ò¶ô¨Ó¹ê²{¤§¡C
Python ¬O¤@ªù«D±`»Åªº¥D¬y»y¨¥¡A¾Ö¦³Àu¬üªº½s½X·®æ¡B¹x±jªºªÀ°Ï»P®ü¶qÀu½èªº¼Ò¶ô¡A¦pªG§Ú̬ݨì¤@¬q¥N½X¼g±o«Ü¦n¡A§ÚÌ·|»¡¡G¡§Pythonic¡I¡¨³o¥»®Ñ¥ÎPython ¨Ó¥´³yº¯³z¹Lµ{¤¤¥Î¨ìªº¦UÃþ§Þ¥©»P¤u¨ã¡A¤]¤£±o¤£»¡¡G¡§Pythonic¡I¡¨¡C
±q³o¥»®Ñ¨½¥i¥H¬Ý¥X§@ªÌÂ×´Iªºº¯³z¸gÅç»PPython ¸gÅç¡A·PÁ§@ªÌ¯à§â¦Û¤vªº¸gÅç¦p¦¹²M´·¦a¤À¨É¥X¨Ó¡A¤]·PÁÂ¥Xª©ªÀ¯à±N³o¥»®Ñ¤Þ¤J°ê¤º¡C
³o¥»®Ñªºµo¦æ¡A·|Åý§ó¦h¤H§ë¨¶iPython ¶Â«È»â°ì¡A¤£¦A¬O¥u¥Î¥L¤H¤u¨ãªº¡§¸}¥»¤p¤l¡¨¡A¦Ó¬O¦b¥²n®É¨è¡A¯à¥ÎPython ¥´³yÄݤ_¦Û¤vªº§Q¥Î¤u¨ã¡C
Python ¦³¥y®æ¨¥¬O¡§¤H¥ÍWµu¡A§Ö¾ÇPython¡¨¡C¬Oªº¡A¤H¥ÍWµu¡A¦pªG§A¥ß§Ó¦¨¬°¤@¦W¯u¥¿ªº¶Â«È¡APython ȱo§A´x´¤¡A³o¥»®Ñ¬O¤@Ó«D±`¦nªº¤Á¤JÂI¡C
§E©¶¡Aª¾¹D³Ð¦t§Þ³N°ÆÁ`µô
±ÀÂ˧ǤG
´¿¸g¥h°ª®Õ«ÅÁ¿¡A³Q¦P¾Ç̰ݱo³Ì¦hªº°ÝÃD´N¬O¡A¦p¦ó¦¨¬°¤@¦W¶Â«È¡C¦¨¬°¤@¦W¼F®`ªº¶Â«È°ª¤â¡A¤]¬O§Ú̳o§å°l¨D¦w¥þ§Þ³Nªº¤Hªº¹Ú·Q¡C
¨º¤\¡A¦p¦ó¦¨¬°°ª¤â©O¡H¨âÓ¯µ³Z¡G«ù¤§¥HùÚ©M°Ê¤â¹ê½î¡C
§Ú°O±oè豵IJpºâ¾÷¨º·|¨à¡A¾÷½t¥©¦X¤§¤U¶R¨ì¥»¦w¥þ§Þ³NÂø§Ó¤ë¥Z¡A¦ý¬O¥Ñ¤_¤ô¥©Ò¡A¨C½g§Þ³N¤å³¹³£¬Ý¤£À´¡C¤£¹L§Ú¨C´Á³£¶R¨Ó¬Ý¡A¤j¬ù«ùÄò¤F¥b¦~¡AºCºC¦aµo²{¯à°÷¬ÝÀ´¤F¡A¦Z¨Ó¬Æ¦ÜÁÙ¥i¥H¦bÂø§Ó¤Wµoªí¤å³¹µo¥¬¶Â«È¤u¨ã¤F¡C´N³o¼Ë°í«ùµÛ¡A³Ì²×¨«¶i¤F¦w¥þ¦æ·~¡C
¥j¤H»¡¡§¯È¤W±o¨Ó²×ı²L¡Aµ´ª¾¦¹¨Æn°`¦æ¡¨¡A·N«ä´N¬On¦h¹ê½î¡An·Q¦¨¬°¶Â«È°ª¤âªº¥t¤@Ó¯µ³Z´N¬On¦h¹ê¾Ô¡C¹ê¾Ô¤¤¤@©w·|¯A¤Î¶}µo¦Û¤vªº¤u¨ã©ÎªÌÀu¤Æ§O¤Hªº¥N½X¡A©Ò¥H´Nn¨D§ÚÌ¥²¶·ºë³q¤@ªù¬Æ¦Ü¦hªù¸}¥»»y¨¥¡CPython´N¬O³o¼Ë¤@ªù±j¤jªº»y¨¥¡A«Ü¦hª¾¦Wªº¶Â«È¤u¨ã¡B¦w¥þ¨t²Î®Ø¬[³£¬O¥ÑPython¶}µoªº¡C¤ñ¦p¤j¦W¹©¹©ªºº¯³z´ú¸Õ®Ø¬[Metasploit¡B¥\¯à±j¤jªºFuzzing ®Ø¬[Sulley¡B¥æ¤¬¦¡¼Æ¾Ú¥]³B²zµ{§ÇScapy ³£¬OPython ¶}µoªº¡A°ò¤_³o¨Ç®Ø¬[¥i¥HÂX®i¥X¦Û¤vªº¤u¨ã¡]¦h¾Ç¤@¨ÇÁ`¬O¦nªº¡A§Ú̦b³o¨½¤]¤£¥Îª§½×¬OPython ¦nÁÙ¬OPerl ¦n³o¼Ëªº°ÝÃD¡^¡C
´N§ÚÓ¤Hªº¸gÅç¨Ó¬Ý¡A»P¹ê¾Ôµ²¦X¬O§Ö³t¾Ç²ß¬ÛÃö¯à¤Oªº³Ì¨Î¸ô®|¡C³o¥»¡mPython ¶Â´U¤l¡G¶Â«È»Pº¯³z´ú¸Õ½sµ{¤§¹D¡n´N¬O±q¹ê¾Ô¥Xµo¡A°ò¤_¹ê»Ú§ð¨¾³õ´ºÁ¿¸Ñ¥N½X«ä¸ô¡A¬O¯à°÷ÅýŪªÌ§Ö³t¤F¸Ñ©M¤W¤âPython ¤Î¶Â«È§ð¨¾¹ê¾Ôªº¤@¥»®Ñ¡A©Ò¥H¯S§O±ÀÂ˵¹¤j®a¡C
ª¾©ö¦æÃø¡A¤j®a¦bŪ®Ñªº¦P®É¤£n§Ñ°O¹ê½î¡G¥ý·dÀ´ì²z¡A¦A®Ú¾Ú¹ê»Ú»Ý¨D¼g¥X¤@Ó±j¤jªºPython ¤u¨ã¡C
¡X¡XÄË°T¦w¥þ¤¤¤ß°ÆÁ`ºÊ J¬Ä¡]lake2¡^
±ÀÂ˧ǤT
Python ¬Oºôµ¸¦w¥þ»â°ìªº½sµ{§Q¾¹¡A¦b¤À¬í¥²ª§ªºCTF Áɳõ¤¤¾Ö¦³µ´¹ïªº²Îªv¦ì¸m¡A¦b¾Ç³N«¬¥Õ´U¬ã¨s¹Î¶¤©M·~¬É¦w¥þ¬ã¨s¹Î¶¤¤¤¤]¤w¸g¦¨¬°²Ä¤@½sµ{»y¨¥¡C¥»®Ñ§@ªÌ¦bºZ¾P®Ñ¡mPython ¦Ç´U¤l¡X¡X¶Â«È»P°f¦V¤uµ{®vªºPython ½sµ{¤§¹D¡n¤§¦Z¡A¦A¦¸±j¤O±À¥X©n©f½g¡mPython ¶Â´U¤l¡G¶Â«È»Pº¯³z´ú¸Õ½sµ{¤§¹D¡n¡A¥H¨ä¦bºôµ¸¦w¥þ»â°ì¡A¯S§O¬Oº|¬}¬ã¨s»Pº¯³z´ú¸Õ¤è¦V¤W®û²]¤Q¼Æ¦~ªº¸gÅç¿n²Ö¡AÄm¤W¤F¤S¤@¥»¸g¨åªºPython ¶Â«È¾i¦¨¤â¥U¡C§@¬°»P¤T¦ìĶªÌ´¿¸g¥ç®v¥ç¤Íªº¦X§@¥ë¦ñ¡A§Ú«D±`°ª¿³¦a¬Ý¨ì¥L̯à°÷¥Hºë·ÇªºÂ½Ä¶¡B±M·~ªºªí¹F±N³o¥»®Ñì´þì¨ý¦a±aµ¹°ê¤ºªºÅªªÌÌ¡C
½Ñ¸¯«Ø°¶
²MµØ¤j¾Ç°Æ¬ã¨sû
ÂŽ¬ªá¾Ô¶¤Áp¦X³Ð©l¤H¤Î»â¶¤
XCTF ÁpÁÉÁp¦Xµo°_¤H¤Î°õ¦æ²Õ´ªÌ
±ÀÂ˧ǥ|
§Ṳ́@ª½»{¬°¡A¤@Ó¦X®æªº¦w¥þ±q·~ªÌ¥²¶·¨ã¦³¦Û¤v°Ê¤â½s¼g¤u¨ã©M¥N½Xªº·Nº@©M¯à¤O¡C¦b³oÓ¦w¥þ§ð¨¾©M·~°È¤@¼Ë¤éÁͤj¼Æ¾Ú¤Æ¡B¹ï§Ü¿E¯P¤Æ¤SÁô½ª¤Æªº¦~¥N¡A§ð¨¾Âù¤è³£¥²¶·¯à¦³§Ö³t¹ê²{©ÎÅçÃÒ¦Û¤v·Qªkªº¯à¤O¡A¿ï¾Ü¦}¾Ç²ß¨Ï¥Î¤@Ó¦nªº¤u¨ã·|°_¨ì¨Æ¥b¥\¿ªº®ÄªG¡C
Python «h¬O¥Ø«e³Ì¾A¦X³oºØ»Ý¨Dªº»y¨¥¡A¥½wªº¾Ç²ß¦±½u¡B½¦¤ô»y¨¥ªºÆF¬¡©Ê©MÂ×´Iªº¤ä«ù®w¨Ï¨ä¤ÑµM¦¨¬°¤F§ð¨¾Âù¤è§¡¥i¨Ï¥Î¤Î§Ö³t¡¥Nªº§Q¾¹¡A´X¥G¥i¥HÂл\¦w¥þ´ú¸Õªº¤è¤è±±¡C¦b§Ú¨D¾Ç®É¡A¨Ï¥Îscapy¡]¥»®Ñ¤¤§@¤F¸Ô²Ó¤¶²Ð¡^©MPyQt ®w½s¼g¤FWifi ¶å±´¤u¨ãWifiMonster¡A°Ñ¥[ªºCTF ¤ñÁɤ¤¡A°ò¥»©Ò¦³ªºexploit ¤]³£¬O°ò¤_Python ªºpwntools ©Mzio ®w½s¼g¡F¦bKeen¡A§Ú̪º«Ü¦hfuzzer ©MÀRºA¤ÀªR¾¹¤]³£¬O¥ÎPython ½s¼gªº¡C
¦ý¥O¤H¿ò¾Ñªº¬O¡A¥Ø«e°ª®Õpºâ¾÷©M«H®§¦w¥þ±M·~«Ü¤Ö¦³±NPython ¤Î¨ä¦b¦w¥þ»â°ì¤è±ªºÀ³¥Î¦C¤J°ö¾ip¹ºªº¡A¤]¯Ê¥F¬ÛÃö®ÑÄy¨Ñ±q·~¤Hû¾Ç²ß¡C¥»®ÑÀ±¸É¤F³oӪťաG¥»®Ñ§@ªÌ±q°f¦V©Mº|¬}¤ÀªR«õ±¸ªº¨¤«×½s¼g¤F¡mPython ¦Ç´U¤l¡X¡X¶Â«È»P°f¦V¤uµ{®vªºPython ½s¿è¤§¹D¡n¦Z¡A¤S±qº¯³z´ú¸Õ©M¶å±´¡B¨úÃÒªº¨¤«×½s¼g¤F¥»®Ñ¡A¤¶²Ð¤FPython ¦b³o¨Ç¤è±ªºÀ³¥Î©M¬ÛÃö®wªº¨Ï¥Î¡C¥»®ÑĶªÌ¤]³£¦b¦w¥þ»â°ì¨ã¦³Â×´I¸gÅç¡A¦}½Ķ¹L¦h¥»¦w¥þ§Þ³N®ÑÄy¡A«OÃÒ¤F¥»®ÑªºÂ½Ä¶½è¶q¡C
¬Û«HŪªÌÌ·|±q¥»®Ñ¤¤¨ü¯q¨}¦h¡C
¦ó²N¤¦¡]a.k.a Flanker¡AKeen Team °ª¯Å¬ã¨sû¡^
2015 ¦~7 ¤ë¤_¤W®ü
±ÀÂ˧Ǥ
¦b±µÄ²«H®§¦w¥þ¤§«e§Ú´N¤w¸g±NPython §@¬°§Ú³Ì±`¥Îªº»y¨¥¤F¡A¥¦¯àº¡¨¬§Ú¤é±`¤u§@ªº©Ò¦³»Ý¨D¡C¦]¬°¹ïPython ¤w¸g¦³¤F¤@©w¤F¸Ñ¡A¦b§Ú±µÄ²«H®§¦w¥þ¥H¦Z¡A¥¦¤]¨Ï§Ú¦b«H®§¦w¥þ»â°ìªº±´¯Á¶i¦æ±o«Ü¶¶§Q¡C
¦ÑµP¤j¶Â«È¬d²z¡P¦Ì°Ç»¡ªº¨S¿ù¡G¡§¸}¥»¤p¤l©M¾·~¶Â«Èªº°Ï§O¬O¶Â«È·|¦h½s¼g¦Û¤vªº¤u¨ã¦Ó¤Ö¥Î§O¤H¶}µoªº¤u¨ã¡C¡¨§Ú±q¨ÆWeb º¯³z¬ÛÃö¤u§@¡B°Ñ¥[CTFÄvÁɪº®ÉÔ¡A°ò¥»³£¦b¨Ï¥Î¦Û¤v¼gªºPython ¸}¥»¨Ó¹ê²{¦Û¤vªº¥Øªº¡G±½´y¦¬¶°¥Ø¼Ð«H®§¡A´ú¸Õ¤j¶q¤wª¾º|¬}¬O§_¦s¦b¡A¹ïSQL ª`¤J¡BXSS §ðÀ»ÂIªº¦Û°Êµo²{¡A¹ï§ðÀ»¶i¦æ§ì¨ú¡BºIÀò¡B«©ñ¡A¦b¤ñÁɤ¤¤j¶q³¡¸p¦Zªù¶i¦æ±±¨î¡C
Python ¤¤¦³¤j¶qªº²Ä¤T¤è®w¥i¥HÅý§A±qµLÃöªº¤u§@¤¤²æ¨¦Ó¥X¡A±M¤ß¥h¹ê²{§A©Ò»Ýnªº¥\¯à¡]¦³®É§A¬Æ¦Ü·|µo²{¦³¤H¤w¸g§â§A©Ò»Ýnªº¥\¯à«Ü¦n¦a¹ê²{¤F¡^¡A¥O¤H¤£³QÂø¶Ãªº¨Æ°È©Ò§xÂZ¡C¦bWeb º¯³z³oºØ«µø®Ä²vªº¤u§@¤¤¡A¦bPythonªºÀ°§U¤U§Ö³t¦a§â¦Û¤vªº»Ý¨DÅܦ¨¯à¹B¦æªºµ{§Ç¡A¹ê¦b¬O¥O¤H¿³¾Äªº¤@¥ó¨Æ¡C
§@ªÌ¦b¥»®Ñ¤¤©Òµ¹¥Xªº¤j¶qªº¼Ë¨Ò©M¤è¦V¡A¨¬¥HÅý¨º¨Ç·Q§Q¥ÎPython ¨Ï¦Û¤vªºWeb º¯³z¤ô¥¨³³t´£°ªªº¤H̱o¨ì«Ü¤jªºÀ°§U¡C¦ý½Ð°O¦í¡A¤@©wn°Ê¤â¡C
¥u¦³°Ê¤â¹ê½î¡A¤~¯à¯u¥¿Åé·|¨ì¥»®ÑªººëµØ©Ò¦b¡C
Hacking the planet by Python¡I
³¯¦t´Ë
¥_¨Êªø«F¬ì§Þ¦³¤½¥qÁp¦X³Ð©l¤H¡AÂŽ¬ªá¾Ô¶¤®Ö¤ß¦¨û¡ABlackHat 2015 Á¿ªÌ
2015 ¦~7 ¤ë1 ¤é
±ÀÂ˧Ǥ»
½sµ{»y¨¥ªº¿ï¾Ü°ÝÃD§ó¹³¬O¤@³õ«H¥õ¤§¾Ô¡AºÉºÞ¦p¦¹¡APython ¦b«H®§¦w¥þ¬É¨Ì¬O¤@ªù¨ã¦³²Îªv¦a¦ìªº»y¨¥¡C°ò¤_Python ªº¤u¨ã¡A¥]¬A¦UºØ¦U¼Ëªº¼Ò½k´ú¸Õ¤u¨ã¡B¥N²z¤u¨ã¡A¬Æ¦Ü¥]¬A°¸º¸¥X²{ªº§ðÀ»¥N½X¡Cº¯³z§ðÀ»¥»O¡A¦pCANVAS¤]¬O¥ÎPython ½s¼gªº¡AÁÙ¦³¨ä¥Lªº¤u¨ã¡A¨Ò¦pPyEmu ©MSulley µ¥¡C
§Ú©Ò¼gªº¨C¤@Ó¼Ò½k´ú¸Õ¤u¨ã©Î§ðÀ»¥N½X³£¨Ï¥Î¤FPython »y¨¥¡C¨Æ¹ê¤W¡AChris Valasek ©M§Ú¦b³Ìªñ¹ï¨T¨®¶Â«È¦æ¬°ªº¬ã¨s¹Lµ{¤¤¡AÁ٨ϥÎPython ½s¼g¤F¤@Ó®w¡A±N§½°ìºô±±¨î¾¹¡]CAN¡^ªº«H®§ª`¤J¨T¨®ºôµ¸¤¤¡A¹ê²{¹ï´¼¯à¦æ¨®¹q¸£ªº¯}¸Ñ¡C
¦pªG§A¹ï«H®§¦w¥þ¶µ¥Ø¤¤ªº¬dº|¸É¯Ê·P¿³½ìªº¸Ü¡A¨º¤\Python ¬O¤@ªù«D±`ȱo¾Ç²ßªº»y¨¥¡A¦]¬°Python ¤¤¦³¤j¶qªº°f¦V¤uµ{©M§ðÀ»¥N½X®w¨Ñ§A¨Ï¥Î¡C²{¦b¡A¦pªGMetasploit ªº¶}µoªÌ¯à°÷¹y®©¡A¦}¥B§â¶}µo»y¨¥±qRuby Âà¨ìPython¤W¡A¨º¤\¨â¤jº¯³z´ú¸Õ¥»O°}ÀçÀ³¸Ó¯à°÷²Î¤@¤F¡C
¦b³o¥»·s®Ñ¤¤¡AJustin ¨Ï¥Î¤F¤j¶qªº½g´T°Q½×¨ã¦³¶i¨úºë¯«ªº¦~»´¶Â«ÈÌÀ³¸Ó¦p¦ó¨³³t¦¨ªø¡C¥L±N¦b®Ñ¤¤¹ê»Úºt½m¦p¦óŪ¨ú©M¥Í¦¨ºôµ¸¼Æ¾Ú¥]¡A¦p¦ó¦bºôµ¸¤¤¶i¦æ¶å±´¡A·íµMÁÙ¥]¬AWeb À³¥Î¼fp©M§ðÀ»¤è±ªº§Þ³N¡C¦b³o¤§¦Z¡A¥L±N«ÂI°Q½×¦p¦ó½s¼g¥N½X°w¹ïWindows ¨t²Î¶i¦æ§ðÀ»¡CÁ`¦Ó¨¥¤§¡A¡mPython ¶Â´U¤l¡G¶Â«È»Pº¯³z´ú¸Õ½sµ{¤§¹D¡n¬O¤@¥»«D±`¦³½ìªº®Ñ¡C·íµM¡A³o¥»®Ñ¤£¯àÅý§A¦¨¬°¤@Ó¹³§Ú¤@¼Ëªº¶W¯Å¤j¶Â«È¡A¦ý¦Ü¤Ö¥i¥H¬°§A«ü¤Þ¤@±ø¥¿½Tªº¹D¸ô¡C°O¦í¡A¸}¥»¤p¤l©M¾·~¶Â«Èªº°Ï§O¬O½s¼g¦Û¤vªº¤u¨ã¡A¤Ö¥Î§O¤H¶}µoªº¤u¨ã¡C
¬d²z¡P¦Ì°Ç
Éo¸ô©ö´µ¡A±KĬ¨½¦{
2014 ¦~9 ¤ë
«e ¨¥
Python ¶Â«È¡A§A¥i¥H¥Î³oÓµü¨Ó§Î®e§Ú¡C¦bImmunity ¤½¥q¡A§Ú«D±`©¯¹B¡A¯à©M¤@¸s¯u¥¿À´±o¨Ï¥Î©M½s¼gPython ªº¤H¤@°_¤u§@¡CµM¦Ó§Ú¤£¬O¥L̤¤ªº¤@û¡C
§Ú±N¤j¶qªº®É¶¡¥Î¦bº¯³z´ú¸Õªº¤u§@¤¤¡A³o»Ýn¨Ï¥ÎPython ¦bµu®É¶¡¶}µo¥X¤u¨ã¡A§ÚÌÃöª`ªº¬O¤u¨ã¬O§_¯à¥¿±`°õ¦æ©M±o¨ìµ²ªG¡]¦Ó¤£Ãö¤ß³oÓ¤u¨ã¬O§_¦n¬Ý¡B¬O§_°µ¹LÀu¤Æ¡A¬Æ¦Ü¬O§_éw¡^¡C³q¹L¥»®Ñ§A±N¬Ý¨ì§Úªº½sµ{¤è¦¡¡A§Ú·Pı³oºØ¤è¦¡¦b¬YºØµ{«×¤WÅý§Ú¦¨¬°¤F¤@¦WÀu¨qªºº¯³z´ú¸Õ¤Hû¡C§Ú§Æ±æ³oºØ½sµ{ªºõ¾Ç²z©À©M·®æ¤]¥i¥HÀ°§U§A¡C
¦b¾\Ū¥»®Ñªº¹Lµ{¤¤¡A§A·|¤F¸Ñ¨ì§Ú¤£·|¹ï³æ¤@¸ÜÃD°µ²`¤Jªº±´°Q¡A³o¬O¥»®Ñªº¤@Ó¯SÂI¡C§Ú·QÅýŪªÌ²L¹Á»³¤î¡A¦}«O¯d¤@©wªº¿³½ì¡A³o¼ËŪªÌ´N¥i¥HÀò±o°ò¦ª¾ÃÑ¡C¦b¦¹°ò¦¤W¡A§Ú³q¹L¨C³¹ªº²ßÃD§â§Úªº¤@¨Ç·Qªk¯dµ¹ÅªªÌ¡A³o¼Ë¦³§U¤_ŪªÌ¿W¦Û«ä¦Ò¦}¿ï¾Ü¦Û¤vªº¤è¦V¡C§Ú¹ªÀyŪªÌªB¤Í̹ê²{³o¨Ç·Qªk¡A¦}«D±`¼Ö·NŪªÌ¦b¹ê²{¤@Ó¨ãÅ鶵¥Ø¡B§¹¦¨¦Û¤vªº¤u¨ã©ÎªÌ®a®x§@·~¦Zµ¹§Ú¤ÏõX¡C
©M¨ä¥L§Þ³N®ÑÄy¤@¼Ë¡AŪªÌ¹ïPython ´x´¤µ{«×ªº¤£¦P¡]©ÎªÌ¹ï«H®§¦w¥þªº²z¸Ñ¤£¦P¡^·|¨Ï¥L̹糧®Ñ¦³¤£¦PªºÅéÅç¡C¤@¨ÇŪªÌ¥i¯à¥u·|§ä¥X´XÓ¦Û¤v·P¿³½ìªº³¹¸`¦}¶i¦æ²`¤J¾Ç²ß¡A¥t¤@¨ÇŪªÌ¥i¯à·|³v½g¾\Ū¡C§Úªº«Øij¬O¡A¦pªG§A¬O¤@Óªì¯Å©Î¤¤¯ÅªºPython µ{§Çû¡A§A¥i¥H«ö¶¶§Ç³qŪ¥»®Ñ¡A§A±N¦b¥»®Ñªº¾\Ū¹Lµ{¤¤¾Ç¨ìPython ªººëµØ³¡¤À¡C
²n¤¶²Ð¤@¤U¡A§Ú±N¦b²Ä2 ³¹¤¶²Ðºôµ¸¤è±ªº°ò¦ª¾ÃÑ¡A¦b²Ä3³¹¥Dn¤¶²Ðì©l®M±µ¦r¡A¦b²Ä4 ³¹¤¶²Ð¦p¦ó¨Ï¥ÎScapy ¶}µo¦³½ìªººôµ¸¤u¨ã¡C¥»®Ñªº³Ñ§E³¡¤À±N¤¶²Ð¦p¦ó§ðÀ»Web À³¥Îµ{§Ç¡A¨ãÅé¨Ó»¡¡A§Ú̱N¦b²Ä5³¹¤¶²Ð±`¥Î¤u¨ã¡A¦b²Ä6 ³¹¤¶²Ð¬y¦æªºWeb À³¥Îº¯³z¤u¨ã¡]Burp Suite¡^¡C±q³o¨½¶}©l¡A§Ú̱Nªá¤j¶qªº½g´T°Q½×¤ì°¨¡A¦b²Ä7 ³¹¤¤°Q½×GitHub ªº©R¥O»P±±¨î¡A¦b²Ä10³¹¤¤°Q½×Windows Åv´£¤Éªº§Þ¥©¡C¦b³Ì¦Z¤@³¹¤¤°Q½×¨Ï¥ÎVolatility ¦Û°ÊÀË´ú§ðÀ»¤º¦sªº¨úÃÒ§Þ³N¡C
§ÚºÉ¶q«O«ù¥þ®Ñ¼Ë¥»¥N½XªºÂ²µu©Ê©M°w¹ï©Ê¡A¹ï¥N½Xª`ÄÀ¤]¬O¦p¦¹¡C¦pªG§A¬O¤@ӾDzßPython ªº·s¤â¡A§Ú«Øij§A°Ê¤â¹ê½î¨C¤@¦æ¥N½X¥H¥[±j°O¾Ð¡C®Ñ¤¤©Ò¦³ªº·½¥N½X¥i¥H³q¹Lhttp://nostarch.com/blackhatpython/Ãì±µ¤U¸ü¡C
²{¦bÅý§Ú̶}©l§a¡I
P ÁÂ
·PÁ§ڪº®a®x¡X§Ú¬üÄRªº©d¤lClare¡A§Úªº5 ӫĤlEmily¡BCarter¡BCohen¡BBrady ©MMason¡A·PÁÂ¥L̦b§Ú¼g®Ñªº¤@¦~¥b´Á¶¡µ¹¤©§Úªº¹ªÀy©M¼e®e¡C§Úªº¥S§Ì¡B©j©f¡B¤÷¥À©MPaulette ¦P¼Ë¦b¼g®Ñ´Á¶¡«ùÄò¹ªÀy§Ú¡A§Ú·R§AÌ¡C
PImmunity ªº©Ò¦³¦P¤H¡]¦pªG¦³¨¬°÷ªºªÅ¶¡¡A§Úº@·N¦b³o¨½¦C¥X§AÌ©Ò¦³¤Hªº¦W¦r¡^¡G·PÁ§ĄC¤Ñ¹ï§Úªº¼e®e¡A§A̬O¤@¸s¤F¤£°_ªº¤u§@¥ë¦ñ¡CPNo Starch ¥Xª©ªÀªºTyler¡BBill¡BSerena ©MLeigh¡A·PÁ§A̹糧®Ñ©Ò°µªº¨¯¶Ô¤u§@¡A§AÌ©Ò¦³ªº«Øij§Ú³£±µ¨ü¦}ªí¥Ü·PÁ¡C
·PÁÂ¥»®Ñªº§Þ³N½s¿èDan Frisch ©M Cliff Janzen¡C¥L̺VÀ»¦}¼f¾\¤F¨C¤@¦æ¥N½X¡A½s¼g¤F¤ä«ù¥N½X¡A½s¿è©M®ÕÅç¤F®Ñ¤¤¥N½Xªº®æ¦¡¡A¦}¦b¥»®Ñ¥Xª©ªº¾ãÓ¹Lµ{¤¤¹ï§Úµ¹¤©¤F¤j¤O¤ä«ù¡C¥ô¦ó¼¶¼g«H®§¦w¥þ®ÑÄyªº¤H³£À³¸Ó»P¥L̦X§@¡A¥L̬OȱoºÙÃÙªº¦X§@¥ë¦ñ¡C
·PÁ¨º¨Ç»P§Ú¤À¨É¶¼®Æ¡BÅw¯º©M²á¤Ñªº¦ºÄÒÌ¡A·PÁ§A̱µ¨ü§Ú¦b¼g®Ñ¹Lµ{¤¤¹ï§A̪ºµoªn¡C |
¤º®e²¤¶¡G¥»®Ñ¬OºZ¾P®Ñ¡mPython ¦Ç´U¤l¡X¶Â«È»P°f¦V¤uµ{®vªº Python ½sµ{¤§¹D¡nªº©n©f½g¡A¨º¥»®Ñ¤@±¥««K¥e¾Úpºâ¾÷¦w¥þÃþ®ÑÄyªºÀY§â¥æ´È¡C¥»®Ñ¥Ñ Immunity ¤½¥qªº°ª¯Å¦w¥þ¬ã¨sû Justin Seitz ºë¤ß¼¶¼g¡C§@ªÌ®Ú¾Ú¦Û¤v¦b¦w¥þ¬É¡A¯S§O¬Oº¯³z´ú¸Õ»â°ìªº´X¤Q¦~¸gÅç¡A¦VŪªÌ¤¶²Ð¤F Python ¦p¦ó³Q¥Î¦b¶Â«È©Mº¯³z´ú¸Õªº¦UÓ»â°ì¡A±q°ò¥»ªººôµ¸±½´y¨ì¼Æ¾Ú¥]®·Àò¡A±q Web ª¦ÂΨì½s¼g Burp ÂX®i¤u¨ã¡A±q½s¼g¤ì°¨¨ìÅv´£¤Éµ¥¡C §@ªÌ¦b¥»®Ñ¤¤ªº«Ü¦h¹ê¨Ò³£«D±`¨ã¦³³Ð·s©M±Òµo·N¸q¡A ¦p HTTP ¼Æ¾Ú¤¤ªº¹Ï¤ùÀË´ú¡B °ò¤_ GitHub©R¥O¶i¦æ±±¨îªº¼Ò¶ô¤Æ¤ì°¨¡BÂsÄý¾¹ªº¤¤¶¡¤H§ðÀ»§Þ³N¡B§Q¥Î COM ²Õ¥ó¦Û°Ê¤Æ§Þ³NÅѨú¼Æ¾Ú¡B³q¹L¶iµ{ºÊµø©M¥N½X´¡¤J¹ê²{Åv´£¤É¡B³q¹L¦VµêÀÀ¾÷¤º¦s§Ö·Ó¤¤´¡¤J shellcode ¹ê²{¤ì°¨¾n¯d©MÅv´£¤Éµ¥¡C³q¹L¹ï³o¨Ç§Þ³Nªº¾Ç²ß¡AŪªÌ¤£¶È¯à´x´¤¦UºØ Python ®wªºÀ³¥Î©M½sµ{§Þ³N¡AÁÙ¯à©Ý¼eµø³¥¡A°ö¾i©MÁë·Ò¦Û¤vªº¶Â«È«äºû¡CŪªÌ¦b¾\Ū¥»®Ñ®É¤]§¹¥þ·Pı¤£¨ì¨ä¥L¤@¨Ç§Þ³N®ÑÄy±`¨£ªº¬\Àê©M¥F¨ý¡C |
¥Ø¿ý¡G²Ä 1 ³¹ ³]¸m Python Àô¹Ò 1
¦w¸Ë Kali Linux µêÀÀ¾÷1
WingIDE3
²Ä 2 ³¹ ºôµ¸°ò¦ 9
Python ºôµ¸½sµ{²¤¶ 10
TCP «È¤áºÝ 10
UDP «È¤áºÝ 11
TCP ªA°È¾¹12
¨ú¥N netcat13
¤p¸Õ¤û¤M 21
³Ð«Ø¤@Ó TCP ¥N²z 23
¤p¸Õ¤û¤M 28
³q¹L Paramiko ¨Ï¥Î SSH 29
¤p¸Õ¤û¤M 34
SSH ÀG¹D 34
¤p¸Õ¤û¤M 38
²Ä 3 ³¹ ºôµ¸¡Gì©l®M±µ¦r©M¬y¶q¶å±´ 40
¶}µo UDP ¥D¾÷µo²{¤u¨ã 41
Windows ©M Linux ¤Wªº¥]¶å±´ 41
¤p¸Õ¤û¤M 43
¸Ñ½X IP ¼h 43
¤p¸Õ¤û¤M 47
¸Ñ½X ICMP48
¤p¸Õ¤û¤M 52
²Ä 4 ³¹ Scapy¡Gºôµ¸ªº´x±±ªÌ 54
ÅѨú Email »{ÃÒ 55
¤p¸Õ¤û¤M 57
§Q¥Î Scapy ¶i¦æ ARP ½w¦s§ë¬r 58
¤p¸Õ¤û¤M 63
³B²z PCAP ¤å¥ó 64
¤p¸Õ¤û¤M 69
²Ä 5 ³¹ Web §ðÀ» 71
Web ªº®M±µ¦r¨ç¼Æ®w¡G urllib2 71
¶}·½ Web À³¥Î¦w¸Ë 73
¤p¸Õ¤û¤M 75
¼É¤O¯}¸Ñ¥Ø¿ý©M¤å¥ó¦ì¸m 76
¤p¸Õ¤û¤M 79
¼É¤O¯}¸Ñ HTML ªí®æ»{ÃÒ 80
¤p¸Õ¤û¤M 86
²Ä 6 ³¹ ÂX®i Burp ¥N²z 88
°t¸m89
Burp ¼Ò½k´ú¸Õ90
¤p¸Õ¤û¤M 97
¦b Burp ¤¤§Q¥Î Bing ªA°È 101
¤p¸Õ¤û¤M 105
§Q¥Îºô¯¸¤º®e¥Í¦¨±K½X¦r¨å 107
¤p¸Õ¤û¤M 111
²Ä 7 ³¹ °ò¤_ GitHub ªº©R¥O©M±±¨î114
GitHub ½ã¸¹³]¸m115
³Ð«Ø¼Ò¶ô116
¤ì°¨°t¸m 117
½s¼g°ò¤_ GitHub ³q«Hªº¤ì°¨ 118
Python ¼Ò¶ô¾É¤J¥\¯àªº¯}¸Ñ121
¤p¸Õ¤û¤M123
²Ä 8 ³¹ Windows ¤U¤ì°¨ªº±`¥Î¥\¯à125
¦³½ìªºÁä½L°O¿ý125
¤p¸Õ¤û¤M 129
ºI¨ú«Ì¹õ§Ö·Ó 130
Python ¤è¦¡ªº shellcode °õ¦æ 131
¤p¸Õ¤û¤M 132
¨F²°ÀË´ú 133
²Ä 9 ³¹ ª±ÂàÂsÄý¾¹140
°ò¤_ÂsÄý¾¹ªº¤¤¶¡¤H§ðÀ» 140
³Ð«Ø±µ¦¬ªA°È¾¹144
¤p¸Õ¤û¤M 145
§Q¥Î IE ªº COM ²Õ¥ó¦Û°Ê¤Æ§Þ³NÅѨú¼Æ¾Ú 146
¤p¸Õ¤û¤M 154
²Ä 10 ³¹ Windows ¨t²Î´£Åv156
Àô¹Ò·Ç³Æ157
³Ð«Ø¶iµ{ºÊµø¾¹ 158
§Q¥Î WMI ºÊµø¶iµ{ 158
¤p¸Õ¤û¤M 160
Windows ¨t²Îªº¥OµPÅv 161
űoÄvª§ 163
¤p¸Õ¤û¤M 167
¥N½X´¡¤J168
¤p¸Õ¤û¤M 170
²Ä 11 ³¹ ¦Û°Ê¤Æ§ðÀ»¨úÃÒ172
¤u¨ã¦w¸Ë 173
¤u¨ã°t¸m 173
§ì¨ú¤f¥Oªº«¢§ÆÈ173
ª½±µ¥N½Xª`¤J177
¤p¸Õ¤û¤M 183 |
§Ç¡G |