大佬们再看此文章前可以看一下序言,小的感激不尽,欢迎各位大佬批评指正
大神的github链接:https://github.com/Micropoor/Micro8
以下内容需要配合大神的课件进行观看,只是个人解释,感谢大家的阅读。
systeminfo>micropoor.txt&(for %i in (KB977165 KB2160329 KB2503665 KB2592799 KB2707511 KB2829361 KB2850851 KB3000061 KB3045171 KB3077657 KB3079904 KB3134228 KB3143141 KB3141780)do @type micropoor.txt|@find /i "%i"||@echo %i you can fuck)&del /f /q /a micropoor.txt
首先,cmd中&是连接符(无论前面结果如何都会执行后面语句),那么我们先把这段命令先分成三个部分
一、systeminfo>micropoor.txt
二、for %i in (KB977165 KB2160329 KB2503665 KB2592799 KB2707511 KB2829361 KB2850851 KB3000061 KB3045171 KB3077657 KB3079904 KB3134228 KB3143141 KB3141780)do @type micropoor.txt|@find /i "%i"||@echo %i you can fuck
三、del /f /q /a micropoor.txt
然而二还是太长了,我们把他通过|(就是enter上面那个键,作用是前面语句的结果作为后面语句的参数)与||(前面的语句没执行成功,执行后一条语句)接着分解
二、1.for %i in (KB977165 KB2160329 KB2503665 KB2592799 KB2707511 KB2829361 KB2850851 KB3000061 KB3045171 KB3077657 KB3079904 KB3134228 KB3143141 KB3141780)do @type micropoor.txt
二、2.@find /i "%i"
二、3.@echo %i you can fuck
好了,我们来逐条解释
一、执行systeminfo命令,把内容写入micropoor.txt中
二、1.就是一个循环,一个形式变量%i,从(exp1,exp2)中遍历,并且显示micropoor.txt的内容
二、2. /i(不在乎大小写的)在显示的micropoor.txt中查找exp是否存在
二、3.若该exp不存在于micropoor.txt中,则执行,说明没有exp,可以被利用,则输出 exp you can fuck,若存在于micropoor.txt中,则不执行此命令
三、强制安静的删除创建的micropoor.txt文件(不留下痕迹)