Archivo de la categoría: Microsoft
Borrar la cache de navegacion del java – Caché de Flash y Java.
A veces borramos el histórico de navegación pero nos olvidamos del java y nos pueden encontrar inforamación valiosísima, por el ejemplo el profesor en clase puede saber que he estado jugando al Jordi Tarres en versión flash 🙂 (ojala lo hubiera) cuando debería haber estado atendiendo.
La caché de los navegadores web se limita a las páginas web y a las imágenes. Muchas aplicaciones web programadas con Flash y Java no se ven afectadas por la limpieza de caché clásica, almacenan archivos en las caché de los plugins.
CCleaner puede borrar tanto la caché de Flash como la de Java, pero lo ideal es tener más control sobre lo que borras y para ello debemos recurrir a los paneles de cada complemento.
Por ejemplo en flash podemos tener partidas de juegos web, cookies, música …
Para Flash: entra en Panel de control de Flash y echa un vistazo al contenido. http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager07.html
Evitar que Java almacene contenido temporal en el ordenador y además borra los archivos temporales, tienes la ayuda aquí:
http://www.java.com/es/download/help/plugin_cache.xml
Y más claro ni agua.
Ver los LOG del Firewall de Windows en tiempo REAL
FIREWALL de Windows el gran desconocido, viene a ser lo mismo que Avilés en Asturias 😉
Vamos a comprobar en tiempo REAL lo que esta maquinando nuestro FIREWALL de Windows y además vamos a usar una herramienta de LINUX muy muy MOLONA.Os aconsejo quedaros hasta el final del post y probarlo.
Si comprobasteis los eventos, os habréis dado cuenta que no vemos nada, para activar los LOG debemos hacer lo que nos muestra la imagen:
–
Podéis por ejemplo bloquear todos los accesos de salida para que no salga el internet explorer como hicimos en el post anterior e intentar navegar con la finalidad de crear un log. A posterior vamos a ver el log del descarte, por supuesto no es en tiempo real, simplemente abrimos el fichero:
.
Probarlo.
Podemos ver el log en tiempo REAL, pero necesitamos unas herramientas, geniales, de ellas utilizaremos el comando tail. Este comando esta en más paquetes de aplicaciones, como en las unxutils.
Descarga de aquí: http://www.cygwin.com/
Maravilloso es como tener un LINUX en nuestro windows .ohhhhhhhhhhhhhhhhh!!!.
Solo necesitamos el .exe, dejo una captura de la instalación, solo vamos a seleccionar los paquetes que necesitamos para el comando tail, lo pongo en la búsqueda (search) y ahora selecciono las utils.
Pinchando sobre la palabra Skip nos marca lo que queremos instalar, en este podemos instalar xtail, pero tail ya está en la instalación básica.
Cuando tengamos nuestra selección le damos a siguiente.
Su consola en C:\cygwin\bin\mintty.exe
Ahora para montar nuestro directorio de windows donde están los log del firewall actualizándose en tiempo real hacemos:
Una pasada ehhhh !!!!
Como veis usamos para ver los logs la línea tail -f /cygdrive/loquesea , yo no lo hacía así, movía el fichero del log del firewall dentro del directorio de instalación del cygwin, no podía salir del directorio desde el Shell o la consola que veis más arriba.
Gracias al blog de FLU –PROYECT y a sus integrantes que nos deleitan con grandes post pude averiguar como se podía hacer sin cambiar la ubicación del fichero, llegue a su blog por casualidad.
Así que agradecimientos a http://www.flu-project.com/ en este caso no sé el nombre del autor del post. Podéis hacerles alguna visita, tienen cosas muy que muy interesantes.
El último drop de la captura anterior es un intento de actualización del flash, tenemos permitida la navegación por el puerto 80 al iexplorer en una regla del firewall, pero no a otras aplicaciones a traves de ese puerto, de ahí la importancia de bloquear por programa y no por puerto, evitando malware que quiera aprovecharse del puerto 80 que siempre tenemos abierto en nuestros equipos.
Si sale un Reject significa que deniega el paso de ese paquete, manda un ICMP como destino inalcanzable mientras que Drop deniega el paso del paquete y no manda respuesta de la denegación, es lo mejor para no dar pistas.
Con tail pues como en Linux, vemos el número de secuencia, el puerto, el tipo de paquete, el tamaño de la ventana, protocolo, los flags TCP, las últimas líneas son para el tipo de icmp, etc.
COÑO !! tengo habilitado IPv6 además fe80 mmmmmmmmmmm que agujero de seguridaddddd !!, lo que da uno cuenta.
Para el que le gustará esta pequeña maravilla de aplicación, perdón de conjunto de herramientas Linux, que se puede usar en windows, tiene más información sobre Cygwin en:
http://www.vicente-navarro.com/blog/2007/07/06/instalar-un-cygwin-portable-en-una-memoria-usb/
Probar el comando dd 😉
Por finalizar el post:
«»Windows 7 and Windows Server 2008 R2 introduce the new netsh wfp context that enables you to capture diagnostic trace sessions»» Lo dejamos ahí por si alguien lo necesita y quiere investigar la línea, pero normalmente se usa por si tienes problemas como por ejemplo al implementar ipsec con aplicaciones propias a la hora de pasar por el antivirus, aunque es usado más para desarrollo e investigación, en resumen para que Microsoft te aporte la solución.
Ya sabemos un poco más del firewall de Windows.
Habilitar Firewall por GPO
Vamos aplicar una regla de firewall en todas las estaciones de trabajo de la empresa.
La GPO la aplicamos a la OU en la que estén los equipos cliente de la empresa. Lo suyo es tener una OU por lo menos, la mía se llama equiposcliente
Hay 2 posibilidades:
A-Generar la regla directamente en la política de grupo.
B-Generar la regla de firewall en un equipo cliente y exportarla en .wfw a la política de grupo que vamos aplicar en el controlador de dominio, además este método me permite en el cliente comprobar que las reglas funcionan antes de distribuir la GPO.
Vamos hacer el método B), para mi es el único factible ya que para hacerlo por el método A, debería instalar el Skype en un Servidor y no me apetece mucho tener el Skype en el servidor.
La regla la vamos hacer de entrada y de salida para el fichero ejecutable de la aplicación, es decir sobre el .exe
No hacemos las reglas por puerto ya que siempre se pueden cambiar, de esta manera la regla es mucho más restrictiva.
Cuando activemos la regla de salida «OUT» habremos cortado el resto de tráfico en esa dirección, viene implícito permitir en nuestro caso la salida del Skype pero cortar todo lo demás por que deberemos activar nuevas reglas para el resto de programas, como el emule J pobre emule … ande andaras …
Primero instalar el Skype J.
Botón derecho sobre regla de entrada y nueva regla.
Vamos hacer las reglas de entrada y salida, solo os dejo la captura de una:
Ahora necesitamos introducir la ruta de instalación de ahí usar en mi caso una máquina virtual de W7 para las pruebas:
%programfiles%\Skype\Phone\Skype.exe»
Si hay portátiles a ellos les podemos hacer una especial que les permita conectarse en casa, por ejemplo privado, aunque lo suyo sería que como mínimo se conectaran en dominio desde casa por VPN.
Ya están creadas las dos, echamos un poco de imaginación. Ahora exportamos la directiva entera.
Botón derecho sobre Firewall de …, lo que está marcado en la imagen y exportar directiva.
Una vez exportada nos la llevamos al servidor a la GPO que citábamos al principio.
Mensaje que nos dice que vamos bien, me recuerda al mensaje, póngase en contacto con su administrador y te preguntas pero si soy cojones !!!! En este caso vamos a depositar la confianza de siempre en Microsoft y vamos comprobar que las reglas están, así que este mensajito sobraba.
Siii, están, bueno pues acabamos, el resto ya lo sabéis. Lo único que tengáis cuidado ya que no importasteis unas reglas sino que importasteis todas las reglas del cliente, tener eso en cuenta para jugar con otras GPOs del dominio, pero ya sabéis que las grises no están habilitadas.
Auditar y mirar siempre las auditorias del firewall usando los filtros, son fáciles de usar, echarles un buen vistazo.
Si seguimos bajando en el árbol:
-Ahora hacer vosotros el método A, sobre una aplicación que elijáis.
Imaginemos ahora que tenemos una usuaria que nos cae bien, una compañera de trabajo J y tenemos la nave nodriza inutilizada, solo nos queda tirar todas nuestras naves contra sus acantilados y que se vayan ahí destruyendo entre todos sus tácticas de contra-ataque, pero seguimos intentándolo, así que vamos a su equipo en local e instalamos el Utorrent, que pueda disfrutar un poco de lo que es trabajar en una empresa.
Introducimos nuestras vacilonas credenciales de administradores y:
MERDAAAA…, ya casi no me quedan naves de combate, más concentración …
Conseguidooo, yeeeeeeaaaaaaaaaaahhhhhhhhhhh !!!!!
Los otros utorrent que se ven son de experimentos 😉
Nos viene bien la línea de comandos sobre todo en un windows server core.
Otro ejemplo sería: Agregar una regla de entrada que requiera seguridad y cifrado para el
tráfico TCP del puerto 80:
netsh advfirewall firewall add rule name=»Requerir cifrado para el tráfico TCP/80 entrante»
protocol=TCP dir=in localport=80 security=authdynenc action=allow
Si todavía no tenemos todo el tráfico bloqueado lo podemos hacer en las propiedades con botón derecho en Firewall de Windows con seguridad avanzado.
Conexiones salientes bloquear:
Solo se permiten los que aparecen en las reglas.
Ahora os toca a vosotros habilitar la navegación, ya sabéis.
Podemos pinchar en Configuración en el botón de personalizar como ves dos imágenes más arriba.
Nos aparece esta ventana y cambiamos Mostrar una notificación a Sí.
Según el mensaje de Microsoft nos va avisar cada vez que bloquea una recepción, pero no es así, es un mensaje mal escrito, únicamente nos avisa si alguien o algo se intenta conectar contra nosotros.
No olvidéis activar la salida para el antivirus.
Otro día más sobre Firewall de Windows.
Evitar contraseñas cacheadas en local para recursos compartidos mediante GPO
Vamos a impedir que los usuarios puedan cachear las unidades de red, venga a practicar un poco.
-Ir al controlador de dominio y en la unidad o volumen donde tenemos guardados los permisos de usuario es decir una unidad distinta a c:\ hacemos una carpeta nueva llamada ventas, dentro creamos un fichero o guardamos algo, bien sea una foto o lo que sea,, le damos permisos sobre la carpeta a un usuario llamado usuventas, por lo que previamente debemos tener este usuario creado en nuestra OU ventas.
La carpeta estará compartida para todos los usuarios autenticados en el dominio quitando todos los demás, pero no le damos permisos de control total a nadie.
-Desde un equipo cliente logado como Lola y otro usuario que no sea administrador, vamos acceder al recurso compartido de ventas, lo tenemos que buscar en entornos de red con nuestro explorador de windows, si no esta probablemente tengáis deshabilitado IPV6, podemos acceder también al recurso desde buscar o ejecutar con \\nuestronombredeservidor pero no va dejarnos entrar.
Si intentamos cambiar sus permisos no vamos a poder. ( comprobarlo para ver que todo va bien )
-Ahora damos botón derecho sobre el recurso compartido y le decimos conectar a unidad de red. Si marcamos la opción de conectar de nuevo al iniciar sesión, no va dar un error de permisos. (comprobarlo)
-Eliminar la unidad de red que os acaba de crear antes de continuar.
Para entrar marcamos conectar con otras credenciales sin dejar de marcar conectar de nuevo al iniciar sesión.
Ahora nos pide credenciales, así que pondremos las de usuventas.
Aceptar.
Ya tenemos acceso al recurso compartido.
-Reiniciamos el equipo y vamos al recurso de red
.
No tenemos acceso. La única solución online es desconectarse y volver a conectarse, si se puede tener acceso a la información cacheada.
Esta vez marcamos recordar mis credenciales:
Ahora reiniciamos como lola para comprobar que están cacheadas las credenciales de los usuarios para las conexiones de red, en este caso usuventas.
Es correcto están cacheadas, ya nunca más al iniciar vamos a necesitar introducir las credenciales que bien no??, pues noooo, menudo agujero de seguridad.
Al estar cacheadas puede ser un problema ya que alguien con ciertas malas intenciones puede intentar descubrir las credenciales mediante aplicaciones de terceros que no pongo por no ayudar a usuarios sin conocimientos.
Para evitarlo debemos de marcar una GPO que impida este cacheo y cada vez que se quiera acceder por primera vez al recurso de red tengan que introducir las credenciales, luego en el tiempo que se puede mantener sin uso antes de cerrarse podemos ser un poco más transgresores.
Probamos que funcione la GPO y Fin.
Recycle Bin, PowerShell V2
Como dice Microsoft nosotros seremos capaces de:
-Reducir el coste de operaciones activando la papelera de reciclaje del ADDS.
-Usar la papelera de reciclaje en el Server R2.
Palabras de Microsoft:
-La papelera de reciclaje (Recycle Bin) es la solución para de manera rápida recuperar los objetos del directorio activo evitando reiniciar el controlador de dominio, evitando hacer una restauración autoritativa o tener que esperar a una posterior replicación.
Cualquier objeto puede ser rápidamente restaurado usando PowerShell.
Aunque se empieza a trabajar con PowerShell V3 en Windows server 2012, en R2 estamos con V2 y no estaría tampoco mal, aprender hacer una restauración autoritativa por si te encuentras con un w2008.
PowerShell V2 introduce una nueva infraestructura de comunicación remota que permite a cualquier comando o secuencia de comandos PowerShell para ejecutarse en cualquier ordenador o grupo de ordenadores que ejecutan Windows PowerShell V2. Esta capacidad significa que puede escribir un script de configuración simple para el equipo local y luego ejecutar ese script a cualquier cantidad de números o número de ordenadores sin ningún conocimiento de la red subyacente y cómo funciona. Además, los comandos que se ejecutan no tienen que ser conscientes de red. PowerShell se ocupa de todos los detalles de la conexión de red.
PowerShell ISE es un entorno de desarrollo de Scripts que Microsoft ha incluido en Windows 7. Gracias a este entorno podemos desarrollar Scripts y ejecutarlos todo en la misma aplicación y de una manera gráfica. Todo ello ofrece al usuario final un entorno más atractivo que la clásica línea de comandos. PowerShell ISE ofrece una Interface de Usuario mucho más amistosa, ofrece un editor de multi-lineas y ayuda adicional, fuera de permitir debugear los scripts.
Los Scripts son conjuntos de órdenes que se ejecutarán secuencialmente y que nos ayudan a automatizar tareas. Hay que tener en cuenta que la ejecución de un Script es como la de un programa por lo que puede ser igual de destructivo. Por ello Windows 7 presenta por defecto deshabilitada la posibilidad de ejecución de éstos, tanto en la máquina local como en remoto. Hablaremos de cómo habilitar y deshabilitar la directiva de ejecución de los Scripts.
Basta de definiciones de Micrsofot, comenzamos:
Podemos usar la consola de power Shell o si tenemos el Scripts hecho podemos abrirlo con PowerShell ISE. Pero antes tenemos que instalarlo. Está en características,agregar características.
Inicio > Accesorios > PowerShell > PowerShell ISE (ojo la de 64, NO la de (x86) que es para 32 bits.
Una vez realizado esto podemos ver que se arranca el entorno. La parte superior, su funcionalidad es la edición del Script.
Os recuerdo que para activarla en Windows Server 2008 R2 debe ser el nivel funcional del bosque a WS2008 R2.
Comenzamos:
-Abrimos el Administrador de Windows PowerShell ISE , comenzamos hacer el Script para habilitar la papelera. Podíamos ejecutarlo al final, pero mejor para ir entendiendo las líneas vamos a ir Introduciendo una a una y ejecutándola con la tecla F8, no hace falta depurar el código el que introducimos ha sido proporcionado por Microsoft y por lo tanto funciona.
Voy a escribir el código y dejar un comentario acompañándolo para que sepáis lo que hace cada uno. Lo podéis ver en la imagen. No pongo el código sin ser imagen para que trabajéis un poco y aprendáis, por lo menos que os suene.
Para ejecutar las líneas es tan sencillo como ir poniéndose en cada una de ellas y marcando con el ratón la que vamos a ejecutar, después presiona la tecla F8 y veremos en el panel central el log o resultado.
Vamos haciéndolo por orden, por ejemplo: Línea 2 y presionamos F8. El módulo del directorio active es importado para darnos acceso a los Cmdlets.
Dejamos una captura de la línea 11 correspondiente con visualizar los objetos borrados.
Si en algún momento no os funciona alguna parte del código fijaros el error que os devuelve, si os fiajís en los log veréis que el intérprete interpreta bien, por ejemplo si ponéis comillas simples y están mal el automáticamente las sustituye por las dobles, etc.
Si trabajáis con PowerShell y os acostumbráis al ISE no creo que toquéis más la consola a no ser para algún comando rápido.
Ahora vamos a usar la consola de powershell para hacer algo rápido, pero como digo lo mejor es tenerlo ya escritos J en el ISE.
Inicio -> todos los programas -> accesorios -> Windows Powershell
La práctica consiste en sacar el GUID de un objeto borrado en user.
No sale el GUID como se aprecia en la imagen ObjectsGUID{}, ¿cuál es la razón?
La respuesta es que no hemos iniciado sesión todavía con el usuario.
Supongo que a base de pantallazos rojos habéis visto como es mejor usar la ISE que la consola.
Si no os acabe de funcionar revisar la sintaxis y no olvidéis importar el módulo del directorio activo si trabajáis sobre la consola directamente.
Probar que realmente no podéis entrar en el dominio con el usuario. Ahora debes recuperarlo y entrar con él.
Otra opción sería utilizar el programa ADRecycleBin.
Os dejo su web y como usarlo, echarle un vistazo que va muy bien:
LDAP.exe no estoy de usarla y no tengo ganas de mirarla pero no es lo más aconsejable estando PowerShell.
Cambiar la imagen del fondo de pantalla de login en Windows 7 desde una GPO
Creamos la política de grupo nos apoyaremos de las preferencias que Windows 2008 R2 nos proporciona para configurar los equipos, recordaros que en 2008 no las había no la podíais haberla hecho de esa manera, hubierais tenido que usar un Script.
Y ya qué estamos con preferencias recordar que las directivas de seguridad se aplican a las máquinas pero las privilegios sobre los usuarios o grupos.
Comenzamos creado la ubicación en la que pondremos la imagen.
En la sección de preferencias, en la sección de «FOLDERS» si lo tenéis en español carpetas, guiaros por el dibujo del Icono.
La ubicación de la imagen debe ser: %WindowsDir%\System32\oobe\info\backgrounds si no existe la creáis.
La imagen no puede tener más de 256kbs.
2. Ahora copiamos el archivo de la ubicación de origen a la carpeta destino. Es importante hacer mención que debes de poner el nombre del archivo destino como «BackgroundDefault.jpg» y que los permisos en la carpeta origen debe de tener por lo menos al grupo «equipos del dominio» para que pueda leer y copiar el archivo. Para ellos usamos el icono que está justo encima de carpetas
La dirección de archivos de origen, debería decir algo estilo \\dc\walpaper\BackgroundDefault.jpg y no c:\
Comprobar que llegáis hasta el recurso compartido desde ejecutar.
3. Ahora nos vamos a la sección de «POLITICAS» y vamos a: Administrative templates / System / Logon / Always use custom logon background y lo habilitamos.
Listo, ahora aplicamos la política a una OU o al dominio y esperamos que las políticas se actualicen por sí mismas o damos un gpupdate /force para probarla en un equipo.
Si no os acaba de funcionar e hicisteis todo lo anterior debeis comprobar si se están aplicando las políticas:
Si se genera un error no tenéis comunicación con el servidor.
Si todo va bien:
Omitir la comprobación de recorrido ¿ agujero de seguridad ?
Hoy vamos hacernos una práctica:
La práctica consiste en dejar permisos por ahí perdidos en ficheros o carpetas de niveles inferiores que no tienen los superiores, es decir los directorios padres. Por ejemplo por haber jugado con las herencias en las carpetas.
-Desde un usuario administrador creamos en el raíz del volumen una carpeta llamada datos y le damos permisos a un usuario (podría ser a un grupo entero) lola de lectura y escritura.
Lola es un usuario estándar o autenticado en el dominio.
Tener cuidado con la herencia al crear la carpeta del volumen donde lo hagáis, ya que por defecto lo más seguro es que tengáis al grupo «Todos» dentro de la pestaña de seguridad, por lo que es lo primero a eliminar, pretendemos que solo lola herede al resto de carpetas que crearemos dentro. Echándole imaginación sería lo mismo que si pretendemos poder que todos los usuarios puedan entrar a ver datos, pero solo los administradores en admin, que lo crearemos a continuación.
-Dentro de datos creamos dos carpetas llamadas secretos y ficherosCSV_Ficheros.
-Dentro de secretos creamos una carpeta llamada admin.
-Dentro de admin creamos un fichero que se llame claves.txt, lo editamos y escribimos mi clave. (aquí va tener acceso lola ya que fue heredando desde datos)
-Después a la carpeta secretos le quitamos los permisos de lectura y escritura a lola pero quitando la herencia, sino no va dejar además necesitamos que secretos siga albergando a lola. A esto se puede llegar de distintas maneras, pero así es una forma rápida para llegar a entender lo que queremos demostrar.
-Si nos logamos como lola debería impedir entrar en admin, por lo tanto no podemos bajar más en el nivel de carpetas.
Sin embargo si entramos escribiendo la ruta completa del fichero porque la sepa el usuario, por ejemplo desde línea de comandos y usando el comando notepad.exe, vamos a poder abrir claves.txt
-Ojo con los usuarios heredados del volumen al hacer la carpeta padre.
Y se nos abrirá el fichero aun no teniendo permisos en una carpeta padre.
Se puede evitar con la GPO Omitir la comprobación de recorrido -> si activamos esta GPO si no tenemos permisos sobre una carpeta padre no podemos acceder al fichero, esto por supuesto afecta al grupo «Todos» y puede ser un problema por ejemplo en casos de aplicaciones de empresa o servidores Web, en donde tienes que tener acceso a la carpeta que te muestra la web pero no a las superiores. Ejemplo: \inetpu\recursos\miweb\index.hmtl
La gpo está un poco escondida:
Saludos …
Preparar un inicio personalizado como aviso empresarial de LOPD
Importante sin el Service Pack instalado no funciona. Son de esas cosas de Microsoft que te alegras de saber de otros sistemas operativos (gratuitos).
Son dos GPO a tocar en el servidor de dominio:
Y estaría. Ya sabéis aplicarla al dominio como os enseñaron.
Evitar malware o inyecciones de código – DEP
(Durante el post, podéis pinchar en las imagenes para verlas con mejor claridad)
Con la llegada de los nuevos sistemas operativos desconocemos las nuevas facetas de las que disponemos, es decir no tenemos ni pajolea idea de manejar las nuevas herramientas en los relativamente ya nuevos Sistemas Operativos, no nos molestamos en aprender a usar una herramienta de trabajo y diversión como es nuestro windows 7, total para que ??? si puedo tener un antivirus por la cara, me lo pirateo de las típicas web y sino pues el Avast que es gratuito o el Microsoft Security Essentials no? (el colmo ya son las empresas que tienen el Avast gratuito como versión Home y no pagan la licencia enterprise, so ratas !!!!!), pues bien de poco os sirven hoy en día contra los Malware, estoy reventado de que me llamen los amigos para que les solucione el virus de la policia u otros similares, hay que escapar de los tópicos de los antivirus, nosotros y nuestras técnicas son la mejor protección.
En nuestros PC usados para la empresa no usamos antivirus, sabemos usar nuestro sistema operativo, conocemos los servicios que están en ejecución y no instalamos cualquier aplicación de terceros y lo que es más importante podemos recuperanos de un fallo en menos de lo que canta un pollo, ocurra lo que ocurra, bueno lo retiro, pero en la mayoría de los casos.
En casa todo es muy fácil pero en las empresas en servidores en producción la cosa cambia, explicale al director que hay que parar una producción o al informático que ha metido la gamba e igual es tu jefe o la persona que te ha contratado … hay que hacer lo imposible con tal de no formatear y reinstalar, tonto el primero en formatear, incluso en casa …
Que hace DEP?, bueno pues evitar ese desbordamiento de memoría que tanto nos suena a ataque hacker, (odio la palabra hacker, pobrecitos que cruz les dejaron si eran programadores) o mejor dicho evitar que nos inyecten instrucciones cuando la CPU esta ejecutando un proceso, dicho proceso debe procesar por ciclo de reloj los datos asociados a ese proceso y a veces esos datos se convierten en instrucciones por culpa de algun malware que anteriormente se ha instalado en nuestro Windows 7, haciendo que ahora nuestro procesador ejecute esas instrucciones que nos van a llevar a otros datos que no son los que nos tocaba procesar por ese proceso y ya estamos infectados.
En la memoría de paginación se guarda todo lo que nuestro preceso necesita, como deberiais saber para que un proceso pueda funcionar debe hacerlo en memoría de paginación (para eso está) , ahí están los datos, la pila, las instrucciones que necesita y un indice que va colocado en al principio de la pila.
Para que se usa este indice?, en realidad el proceso no esta en la paginación la paginación se translada a la memoría ram real, y lo que hace es trocear todo lo que necesita el proceso para trabajar, colocando su datos, pila e instrucciones en distintos sitios de la memoria real. El exploit generado por el malware se aprovecha de esto para apoderarse de ese indice y así decirle al proceso que vaya a otra direccion de memoria donde ya no esta el código de este proceso y donde estaran nuestra instrucciones metidas en la variable datos, pues bien DEP IMPIDE QUE LEA ESTAS INSTRUCCIONES y que solo lea datos de la variable datos y no instrucciones que introduce el malware en dicha variable, en pocas palabras el procesador ya no es tonto o mejor dicho distingue datos de instrucciones.
Como se hace esta cabronada por parte del malware?, pues inyectando código hexadecimal a fuego 🙂 aprovechando excepciones de aplicaciones que … y bla bla bla, bueno ya valio de teoría, esta resuelto para que vale DEP, al lio.
Vamos a usar DEP, como medida preventiva y repito solo preventiva tenemos una nueva opción y digo nueva solo desde el punto de vista que viene incluida en windows 7 por defecto que es Data Execution Prevention (DEP), esta medida recibe diferentes nombres dependiendo del fabricante que la implemente. En servidores se puede activar por Bios, que se hace indispensable.
Suele venir en las nuevas placas base que vienen con EFI en vez de Bios (el que no sepa lo que es EFI ahh se siente a mirar Wikipedia y donar aunque sea un dolar.)
DEP lo podemos activar desde Windows 7 y se llamaría hardware DEP, ya que nuestro procesador lo permite si es compatible.
En la imagen al seleccionar DEP podemos ver como nos dice que es compatible, si no lo es también hay DEP por software pero ese no tengo ganas de explicar lo que hace, además no me gusta, por software tengo la teoría de que influye en el rendimiento pero no puedo asegurarlo, ya tendría que explicarlo un Guru de estos temas.
Si os fijáis en la imagen de más abajo, selecciono la opción segunda para añadir una excepción y no habilitar DEP en la aplicación Alcohol 120%, descarto aplicaciones de grabación de DVD porque estamos en crisis, no quiero tener que tirar ningun DVD por un fallo de grabación, que por suerte ya no tengo que pagar la ESTAFA del CANON de la sociedad de autores por copiarme un DVD con mis propias aplicaciones o fotos, pero tambien es cierto que ya lo pague cuando compre la grabadora de DVD el año pasado.
Buff, bueno volvamos a lo que estabamos que se nos va en la IRA, la imagen (pinchar en ella para verla mejor) ahí activamos el DEP:
Donde tenemos esta opción que vemos en la imagen anterior?, pues en rendimiento en el botón de configuración:
Y después?, pues ya esta funcionando y para comprobarlo vamos a inserta esa colunma en nuestro administrador de tareas para ver que aplicaciones lo tienen habilitado y cuales no, ya que las propias aplicaciones algunas pudieran ser incompatibles y si nos dan algún problema podemos sacarlas del DEP poniendolas como el alcohol en la excepción.
Como vemos en la siguiente imagen la aplicacion de copiado de DVD el Alcohol 120%, nos marca como deshabilitada, lo vemos en la marcada en azul donde dice Prevención de ejecución de datos (español) 🙂
También podemos analizar nuestras aplicaciones para ver si tienen soporte para DEP, para ello deben de haber sido compiladas con una opción determinada usando así las librerías necesarias, ahora mismo no recuerdo cuales son, pero las podemos buscar si tenemos curiosidad con San Google.
Yo por ejemplo voy analizar una aplicación que uso mucho, el battlefiel 3 🙂
He usado la aplicación que descargue de http://www.ntcore.com y lo que hago es darle abrir y seleccionar el .exe que contiene los binarios, es decir me he ido a la carpeta donde tengo instalado el juego y he seleccionado el fichero ejecutable el battlefield.exe
La aplicación me hace un analisis muy completo, pero lo que me interesa esta vez es irme a donde dice en el explorador de la izquierda: optional header. Una vez pinchada esta opción, en la lista que me muestra en el panel de la derecha busco DllCharacteristics y una vez encontrada me fijo en el tercer campo de esa fila, que dice:8000 creo que se refiere al valor del registro 0x8100.
A su derecha nos dice Click here, pues hacemos eso pinchamos ahí y nos sale un nuevo panel con las características.
En mi caso como ven salen dos marcados, uno de ellos es: «Image is NX compatible», bien pues eso significa non execute es decir que es compatible con DEP. Nx es un bit que se usa para marcar como no executable en el procesador, es lo mismo que XN,XD,ND, marketing … nada el que quiera saber más sobre NX que mire este enlace:
http://en.wikipedia.org/wiki/NX_bit
Por lo tanto battlefield 3 es compatible con DEP, tengo protección.
También podemos usar otras aplicaciones, en el caso de PeStudio nos lo ponen más visual, va imagen:
Para ver las DllCharacteristics en este caso hay que marcar la casilla que veis abajo en la imagen, como veis esta marcado con una estrella el DEP support.
Como anotación curiosa de las dos aplicaciones podemos ver que en este caso tiene marcado el SEH usage, y en CFF Explorer de NT core, es decir la imagen anterior no lo tiene marcado. Si nos fijamos si estuviera marcada sería que no usa SEH, es decir dice justo lo contrario, por eso no esta marcada así que las dos aplicaciones nos muestran lo mismo pero visto desde otro punto de vista.
Y ahora si en vez de ir a la pestaña superior de Optional Header vamos a la pestaña Idicators, nos cercioramos al ver la opción que esta marcada en azul.
Deciros por último que algunos juegos pueden generar algún error por culpa de DEP, caso de ello fueron los SIM2 en la época del VISTA, pero que en ningún momento hemos experimentado lentitud en el juego por estar activada esta funcionalidad y hemos visto fallo en otras aplicaciones.
Recordar, DEP solo es una medida más contra los malwares ya que cada vez hay códigos más trabajados y que son verdaderas obras de arte, ahí es donde reside el dinero.
Otro día os comento algo que nos empieza a preocupar a la comunidad, la cantidad de peticiones html que recibimos por http siempre que publicamos algo sin dns, son ip 85 que curiosamente es la ip de CHINA …
Saludos a todos y que os traigan mucho los reyes magos y a los que estáis fuera de España y nos leeis, también 🙂
Hola de nuevo, he vuelto a editar el tema debido a varias preguntas recibidas a nuestro correo que figura en la parte superior del Blog. ¿Que es un PE?, supongo que la mayoría quiso preguntar que es un fichero PE.
Si os fijais en los programas usados en este artículo tienen nombre como PE estudio.
Para saber a fondo lo que es un fichero PE podeis leer el documento en español (para mi el mejor explicado) que hay colgado en este enlace https://www.box.com/shared/4156t5rfv8tr5v4bgo19 el autor es @The_Swash y ha juntado sus conocimientos mas el de sus colaboradores nombrados al final del mismo.