¹Ü¿Øº¢×ÓµçÄÔÈí¼þÊÇÒ»¿îÓÃÒÔ¼à¹ÜÉÏÍø¿ÎµÄº¢×ÓµçÄÔÉϳÌÐò£¬ÔÚÒÔǰµÄ°æ±¾ºÅÉϱàÒë³ÌÐòÁËexeʵÐгÌÐò£¬ÎªÁ˸üºÃµØ¼òµ¥»¯£¬Ö»±àÒë³ÌÐòÁËÒ»¸öº¢×ÓµçÄÔÉϵÄserver¶Ë£¬¼°ÆäÒ»¸ö¸¸Ä¸¶Ë²Ù×ݶˣ¬×ÔÈ»£¬»¹¿ÉÒ԰ѲÙ×ݶ˷ŵ½º¢×ÓµçÄÔ£¬Ò»²¢ÊµÐУ¡
³ÌÐòµÄ¹¹³É
1.1 ±¾³ÌÐòserver¶Ë
serverµÄdaemon¶Ë£¬Ò²¾ÍÊÇChildGuard.exe£¬Ä¬ÈÏÉèÖüàÊÓÔÚ8888¶Ë¿ÚºÅ¡£
ÔËÐÐʱ£¬»áÉêÇë°ìÀí¹ÜÀíÔ±Éí·ÝÔËÐУ¬ÎÞ¹ÜÀíԱȨÏ޻᲻³É¹¦¡£
ÒòΪÆäÉêÇë°ìÀí»áÉêÇë°ìÀíwindows¿ª»úÔËÐеÈһϵÁÐľÂí²¡¶¾³£¼û¸öÈËÐÐΪ£¬»á±»360¾õµÃÊÇľÂí²¡¶¾ÕâÀà¡£
±ØÐëÈÃ360º£¹Ø·ÅÐУ¬²¢Ìí¼ÓÐÅÈΡ£
Èç¹û²»°²ÐÄexe³ÌÐò£¬Á¢¼´ÏÂÔØÏàÆ¥ÅäµÄÔ´´úÂ룬×ÔÖ÷±àÒë³ÌÐò
ÒòΪÆä»áÊÔ×ÅÆôÓõçÄÔÉãÏñÍ·Éã¼£¬ÓÐʱºò»á±»360×èÀ¹£¬ÓÐʱºò²»ÈÝÒ×£¨±íÃ÷360ÕâÒ»×÷Óò»¿É¿¿°¡£¬Õæ×èÀ¹Ê±£¬µ²²»×¡£©
ÇëÔÚ360°²È«»¤ÎÀ£¬¡°É趨¡±--gt;¡°°²È«·À·¶¹ÜÀíÖÐÐÄ¡±--gt;É趨¡°Ãâ´òÈÅģʽ¡±ºÍ³ýµô¡°Ä§·¨ÉãÏñÍ·¡±
ChildGuardÆä»áÊͷųöÀ´WatchDog.exe³ÌÐò£¬²¢½«ËüÉêÇë×¢²á±ä³ÉÒ»¸ö¿ª»ú×ÔÆô¶¯µÄWatchDogCµÄ·þÎñÏîÄ¿¡£
WatchDogCµÄ·þÎñÏîÄ¿£¬»áÒÀ¾ÝWatchDog.iniÀï±ßµÄÅ䱸£¬À´°´Ê±ÂÖѯÆð¶¯µÄChildGuard.exeÊDz»ÊÇ»îÖø£¬›]ÓлîÖøµÃ»°£¬ÊÔ×ÅÆð¶¯Ëü¡£
ÄÇÑùÄܹ»È·±£ChildGuard.exe¼´±ã ±»É±£¬WatchDogC·þÎñÏîÄ¿»áÈ«×Ô¶¯ÔÙÀÉÏÒ»¸öChildGuard.exe³ÌÐò
ʵÐÐÍêºó£¬ÖØÐÂÆô¶¯ÏµçÄÔÉÏ£¬ÖØÐÂÆô¶¯ºó£¬netstat -ano|findstr 8888
ÈÏ֤ȷ¶¨ChildGuard.exeÔçÒÑÄܹ»×Ô¶¯Æô¶¯£¬¼àÊÓÔÚÁË8888¶Ë¿ÚºÅ
1.2 ±¾³ÌÐòµÄclient¶Ë
ÊÖ»ú¿Í»§¶ËÒ»²¿·Ö£¬¼¸¸ö£º
1.2.1 ChildControl.exe²Ù×ÝÒ»²¿·Ö
ÕâÒ»³ÌÐò·Åµ½¸¸Ä¸µçÄÔÔËÐУ¬»òÊÇÖ÷ÅÔÚº¢×ÓµçÄÔÔËÐÐ
Ö÷ÅÔÚ¸¸Ä¸µÄµçÄÔÔËÐУ¬»¹¼ÇµÃ¸Ä¶¯ChildControl.iniÀï±ßµÄº¢×ÓµçÄÔipÏêϸµØÖ·
Ëü³Ðµ£ÎÞÏÞÑ»·£¬Ã¿30s¼ì²éһϺ¢×ÓpcµÄÇé¿ö£º
¢ÙµÃµ½ µ±½ñÔËÐеÄÊÇɶ³ÌÐò£¬³ÌÐòµÄÌâÄ¿ÊÇɶ
¢Ú¼ÙÈçµ±½ñµÄǰ̨½Ó´ý³ÌÐòÔÚÐÅÓúÚÃûµ¥£¬ÄÇüNkillËü
¢Û²éÑé360ä¯ÀÀÆ÷µÄÌâÄ¿£¬´øÓÐÓйعؼü´Ê£¬killËü
¢Ü²éÑéÌÚѸÊÓÆµÊDz»ÊÇ´æÓУ¬killËü
¢Ýÿ30sÉã¼һ´ÎµçÄÔÏÔʾÆÁ£¬¼°Æä¼à¿ØÉãÏñÍ·Éã¼һ´Î
¢Þÿ30s×¥Ò»¶Ë10sµÄ»°Í²ÒôƵ
¢ßÐÅÓúÚÃûµ¥µÄ´ò¿ªÊ±¼ä·¶Î§£ºÀýÈçÉè³ÉÒ¹Àï»òÊÇÀñ°ÝÌ죬Äܹ»Ó¦ÓÃÐÅÓúÚÃûµ¥µÄ³ÌÐò£¬±ðµÄ•r¼äÄܹ»
¼ÙÈçÉ趨ÁËÆô¶¯Òþ²Ø£¬ÏÂÒ»´ÎÏë¿ÉÒÔʵ¼Ê²Ù×÷£¬ÇëÏȸ͝ChildControl.iniÀï±ßµÄhideÖ÷Òª²ÎÊý£¬É趨Ϊ0
1.2.2 rpc_cmd.exeÊÇcmdcliÒ»²¿·Ö
ÕâÒ»Äܹ»·Åµ½ÎҵĵçÄÔÉÏÔËÐУº
gt;rpc_cmd.exe
checking host=stanleypc,port=8888
http://stanleypc:8888gt;help
func=s.help()
['now', 'md5sum', 'wf', 'rf', 'my_exec', 'killProcess', 'getProcess', 'getActiveProcName', 'cpu_usage', 'mem_usage', 'dimm_info', 'msg', 'msgImm', 'get_path', 'tts', 'net_info', 'is_admin', 'GetSystemPowerStatus', 'upTIMe', 'create_time', 'username', 'disk_c_usage', 'disk_io_counters', 'net_io_counters', 'snapScreen', 'snapCam', 'snapMerge', 'snapAudio', 'll', 'exit', 'help', 'version']
http://stanleypc:8888gt;version
func=s.version()
v0.8.6.20200410
http://stanleypc:8888gt;tts(±ð´òÓÎÏ·À²£¬¿ìд×÷Òµ£¡)
ttsÕâÒ»Óõ½¶à£¬Ö÷ÒªÊÇ»áÔÚËüÏÔʾÆÁÉÏÏÔʾÐÅÏ¢Ò»¸öÌáʾ¿ò£¬ÉϱßÓÐÁËÄã·¢ÒÔÍùµÄÎı¾£¬Ëæºó»áÔÚËûµçÄÔ£¬ÓïÒôÌáʾһÏÂÕâÒ»¶ÎÎı¾
³ÌÐòµ±½ñÊÊÓõÄ×÷Óãº
now£º»ñµÃµ±½ñº¢×ÓpcµÄ•r¼ä
md5sum£º¸ø³öÎļþ¼ÐÃû³Æ£¬·µ»ØÏàÆ¥ÅäµÄmd5Öµ£¨ÓÃÒÔУÑéÎļþºË¶Ô£©
wf: дdata¸øµ½Ìض¨Îĵµ
rf: ¶ÁÎĵµƒÈÈÝ
my_exec : ʵÐÐÌØ¶¨µÄdosÖ¸Á·µ»Ø¹æ·¶Ý”³öµÄƒÈÈÝ£¬ºÍ²»ÕýÈ·Ý”³öµÄƒÈÈÝ
'killProcess', ¸ø³öpid£¬É±½ø³Ì
'getProcess', ²»ÓÃÖ÷Òª²ÎÊý£¬·µ»ØÈ«²¿¹ý³ÌÐÅÏ¢£»¼Ópid·µ»Øpid¹ý³ÌÐÅÏ¢£»¼ÓcaptionÐÅÏ¢£¬·µ»ØcaptionµÄ¹ý³ÌÐÅÏ¢
'getActiveProcName', ·µ»Øµ±½ñǰ̨½Ó´ýµÄ¹ý³ÌÐÅÏ¢
'cpu_usage', ·µ»Øµ±½ñcpuʹÓÃÂÊ
'mem_usage', ·µ»Øµ±½ñÔËÐÐÄÚ´æÊ¹ÓÃÂÊ
'dimm_info',·µ»Øµ±½ñÎïÀíÄÚ´æÌõ×´¿ö
'msg', ·¢Ìض¨µÄÎÄ×ÖÐÅÏ¢¸øº¢×ӵĵçÄÔÏÔʾÆÁ£¬²¢µÈºòº¢×ӵ㡰Ã÷È·¡±
'msgImm',·¢Ìض¨µÄÎÄ×ÖÐÅÏ¢¸øº¢×ӵĵçÄÔÏÔʾÆÁ£¬²»Ò»º¢×ӵ㣬Á¢¼´·µ»Ø
'get_path',µÃµ½ µ±º¢×ÓpcÉÏChildGuard.exeÔËÐÐËùÊôÎļþĿ¼
'tts',·¢Ìض¨µÄÎÄ×ÖÐÅÏ¢¸øº¢×ӵĵçÄÔÏÔʾÆÁ£¬²¢ÓïÒôÌáʾ¸øÐÅÏ¢ƒÈÈÝ
'net_info',·µ»Øº¢×ÓpcÉϵĻ¥ÁªÍøÐÅÏ¢ƒÈÈÝ
'is_admin', ·Ö±æChildGuard.exeÊDz»ÊÇÒÔ¹ÜÀíԱģʽÔËÐеÄ
'GetSystemPowerStatus',·Ö±æµç³ØÈÝÁ¿µÈÐÅÏ¢£¬±ã½Ý½«À´µÄ±ðµÄ½ô¼±³ÌÐòÌáǰ׼±¸
'uptime', µÃµ½ µçÄÔÉϵÄÔËÐЕr¼ä
'create_time',µÃµ½ ChildGuard.exeµÄÔËÐЕr¼ä
'username', µÃµ½ µ±½ñChildGuard.exeÊÇÒÔÄÄÒ»¸ö¿Í»§ÔËÐеÄ
'disk_c_usage', µÃµ½ cÅ̵ÄʹÓÃÂÊ
'disk_io_counters', µÃµ½ µ±½ñÓ²Å̵Äio×´¿ö£¬ÌáÒé¼ä¾àÔËÐÐ2´Î£¬È¡Îó²î¡Âʱ¼ä¼ä¸ô£¬µÃµ½ ioÁ÷Á¿
'net_io_counters', µÃµ½ »¥ÁªÍøio×´¿ö
'snapScreen',×¥µçÄÔÏÔʾÆÁ
'snapCam', ×¥ÉãÏñÍ·ÅÄÕÕ
'snapMerge', ×¥µçÄÔÏÔʾÆÁ²¢×¥ÉãÏñÍ·ÅÄÕÕ£¬Ëæºó°Ñ¶þÕ߯´´Õµ½Ò»¸öÕÕÆ¬ÉÏ
'snapAudio',×¥µçÄÔÉϵĻ°Í²ÒôƵһ¶ÎÌØ¶¨Ê±¼ä£¨Ä¬ÈÏÉèÖÃ10s£©
'll',Ïà½ülinuxµÄls -lµÄÝ”³öÐÅÏ¢
´ý½¡È«ÊÊÓÃ×÷ÓÃ
1¡¢ÈȸüÐÂ
2¡¢µÃµ½ ÊÖ»ú΢ÐÅä¯ÀÀÌØ¶¨ÍøÕ¾µØÖ·µÄƒÈÈÝ¡£
ÏÖ½×¶ÎGetForegroundWindowµÃµ½ ´°¿Ú¾ä±ú
ÔÙGetWindowTextÓô°¿Ú¾ä±úµÃµ½ ÌâÄ¿£¬
ÓÃGetWindowThreadProcessIdµÃµ½ pid
ÓÃWMI²å¿ÚÓÃpidµÃµ½ cmdÐÅÏ¢
»ù´¡ÄÜÕÚ¸Çÿ¸öµçÄÔä¯ÀÀÆ÷ÌâÄ¿ƒÈÈÝ£¬¿¼ÂÇÁ˾ø´ó¶àÊýÒªÇó¡£
µ«¼ÙÈçÓÃ΢ÐÅ´ò¿ªµÄÍøÕ¾Á´½Ó£¬»òÊÇС³ÌÐòÕâÀàµÄ£¬ÕâÒ»ÌâÄ¿text»òÊÇÍøÒ³Ò³ÃæƒÈÈݵõ½ ²»ÉÏ¡£
ÈÔÔÚÊÔ×ÅÆäËû¹¹Ë¼£¬²¶×½ÕâÒ»ÐÅÏ¢
3¡¢·À±»É±
Ïֽ׶κ¢×ÓС£¬»¹²»ÈÝÒ××ÊÔ´¹ÜÀíÆ÷£¬Î´À´ºÜÓпÉÄܱã»áÁË¡£
Òª¿¼Âǵ½²¡ÔÌå·½·¨Ë«¹ý³Ì»¥¶¯½»Á÷
4¡¢ÏÖ½×¶ÎÓõÄÊÇxmlrpc.server.SimpleXMLRPCServer£¬¶¼»¹Ã»Éí·ÝÈÏÖ¤ÌåÖÆ£¬ÄÚ²¿ÍøÓ¦Óû¹ÐУ¬²»½¨ÒéÓ³Éä¶Ë¿Ú¹ÒÍâÍøµØÖ·
Ìî²¹ÏÂʹÓü¼ÇÉ
1¡¢ChildControl.iniÖеÄÂÖѯ¼ä¾à
É趨Ϊ30s£¬Ïֽ׶ο´À´ÊÇ×îºÏÊʵĺ󣬽ÏΪÊʺϵġ£
ÌØÐÔºÍʱЧÐÔÉÏ£¬¶¼Äܹ»È·±£
2¡¢snapµÄÎĵµÌ«¶àÁË£¬list»áÓÃʱ¹ý³¤£¬
ÕâÒ»±ØÐ밴ʱÇå³ýÏÂ
дÁËÕâÒ»archive_snap_pic.py³ÌÐò£¬Äܹ»°´Ê±Çå³ý
3¡¢snapºóµÄÏàÆ¬ÆÊÎö
analyze_pic.py³ÌÐò
Óú¢×ÓµçÄÔÉãÏñÍ·Éã¼ÁËÏàÆ¬£¬¿ÉÒÔÓÃopencv¼òÒ×·Ö±æÏºöà¸öÇé¿ö£º
a¡¢±Ê¼Ç±¾ºÏÉÏ£»b¡¢º¢×ÓÀëÈ¥×øÎ»£¬Ã»ÔÚµçÄÔÇ°Ãæ£»c¡¢º¢×Ó×ø×ŵçÄÔÇ°Ãæ
ÏÖ½×¶ÎÈÔÔÚ¿ÆÑ§Ñо¿opencvµÄÓÎÏ·Íæ·¨£¬´ó¸ÅÖ»Íê³ÉÁËËùÊöµÄºÃ¶à¸öƒÈÈÝ
4¡¢Ô´´úÂë·½·¨ÊµÐУº
±ØÐëÒÀ¿¿µÄºÃ¶à¸ö°ü£º
Python.exe -m pip install pyinstaller PyQt5#160; opencv-python#160; pywin32#160; Pillow baidu-aip psutil pygame pydub
È¥ÍøÖ·
ѰÕÒÏàÆ¥Åä×ÔÉíµçÄÔ°æµÄPyAudio¿ØÖÆÄ£¿é£¬Ãâ·ÑÏÂÔØ³öÀ´£¬Ëæºó°²ÑbËü
python.exe -m pip install PyAudioxxxxx.whl
¶àÌØÈí¼þվΪÄúÌṩ×îгÌÐòÔ±Èí¼þÈí¼þרÌâ,ÔÚÕâÀﰲ׿°æÆ»¹û°æµÈÓ¦ÓÃÓ¦Óо¡ÓУ¬ÕÒ×îгÌÐòÔ±Èí¼þ¾ÍÀ´¶àÌØÈí¼þÕ¾¡£
´ò°ü°²×°³ÌÐò£¬´ò°ü°²×°³ÌÐòרÌâÒ³Ãæ¼¯ºÏÁ˶à¿îÈÈÃÅ´ò°ü°²×°³ÌÐòµÄÓ¦Óû¶ÓÏÂÔØ£¬°²×°°üÖÆ×÷¹¤¾ßÊÇרҵÓÃÓÚÖÆ×÷°²×°³ÌÐòµÄ´ò°üÀàÈí¼þ£¬µ¥´¿µÄʹÓýű¾À´±àд°²×°³ÌÐò¶ÔÓÚ´ó¶àÊýÈËÀ´Ëµ²»½öÀ§ÄѶøÇÒÈÝÒ׳ö´í£¬Ê¹Óð²×°°üÖÆ×÷¹¤¾ß²»½ö¾ß±¸³õѧÕßÉÏÊÖÈÝÒס¢ÖÆ×÷µÄ°²×°³ÌÐò¹¦ÄÜÍêÉÆµÈÓŵ㣬±¾ºÏ¼¯ÕûºÏÁËһϵÁÐרҵµÄ°²×°°üÖÆ×÷¹¤¾ß£¬Ê¹Óüòµ¥£¬¹¦ÄÜÈ«Ãæ¡£
¶àÌØÈí¼þרÌâΪÄúÌṩȺ¿ØÈí¼þ,Ãâ·ÑÊÖ»úȺ¿ØÈí¼þ,Ⱥ¿ØÈí¼þÆÆ½â°æ£¬°²×¿Æ»¹û°æÈí¼þappÒ»Ó¦¾ãÈ«¡£
Éúº¢×ÓµÄÓÎÏ·´óÈ«º¸ÇÁËʱÏÂËùÓеÄÉú±¦±¦ÓÎÏ·ÏÂÔØ×ÊÔ´£¬ÕâÀïΪ¾«Ñ¡ÁË×îÐÂÈËÆøÈÈËÑÉú±¦±¦ÊÖ»úÍøÓΣ¬ÃÀÈËÓãÉú±¦±¦¡¢¿ÉÒÔ½á»é»³ÔÐÉúСº¢ÓÎÏ·£¬Í¬Ê±»¹×¼±¸º£Á¿µÄÃâ·ÑÓÎÏ·ÏÂÔØ×ÊÔ´£¬Èø÷Î»Íæ¼ÒÄܹ»ÔÚÕâÀïÕÒµ½×Ô¼º×îΪϲ»¶µÄÉú±¦±¦ÊÖ»úÓÎÏ·£¬Ï²»¶µÄС»ï°éÒ»¶¨²»Òª´í¹ýÁË¿©£¡
Ö±²¥³¡¿ØÈí¼þ È«ÐµĹ¦ÄÜÈÃÄãºÍÖ÷²¥Áã¾àÀë½Ó´¥,¸ÐÊÜÐÄÒǵÄËýÓÅÃÀÀ±ÎèºÍÉùÓŶ¯ÌýµÄ÷ÈÁ¦