Guest User

Untitled

a guest
Jul 23rd, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.63 KB | None | 0 0
  1. def meterpreter_service_list
  2. serviceskey = "HKLM\\SYSTEM\\CurrentControlSet\\Services"
  3. threadnum = 0
  4. a =[]
  5. services = []
  6. begin
  7. meterpreter_registry_enumkeys(serviceskey).each do |s|
  8. if threadnum < 10
  9. a.push(::Thread.new(s) { |sk|
  10. begin
  11. srvtype = registry_getvaldata("#{serviceskey}\\#{sk}","Type").to_s
  12. if srvtype =~ /32|16/
  13. services << sk
  14. end
  15. rescue
  16. end
  17. })
  18. threadnum += 1
  19. else
  20. sleep(0.05) and a.delete_if {|x| not x.alive?} while not a.empty?
  21. threadnum = 0
  22. end
  23. end
  24. rescue Exception => e
  25. print_error(e.to_s)
  26. end
  27. return services
  28. end
Add Comment
Please, Sign In to add comment