pu

Buscar este blog

viernes, 19 de diciembre de 2014

USB Arranque/Booteable windows 8, windows 7 - Instalación



Que tal pues aqui estoy de nuevo para ayudarles a crear una
usb
 booteable de
windows
  7
este articulo es muy sencillo pero comprobado que funciona yo asi instalé mi
windows

Funciona perfectamente para el
windows
 7 que trae todas las versiones

Bueno vallamos al punto

Necesitamos:

1 DVD booteable de
windows
 7 (No funcionan versionas modificadas)

2 Una
usb
 de 4Gb minimo y de alta velocidad (2.0)

3 Tu
pc
 debe de soportar bootear desde una
usb



Para crearla vamos a hacer lo siguiente:
paso 1 conecta tu

usb


paso 2 Abre el CMD (simbolo del sistema) como administrador

paso 3
En la ventana de cmd ejecuta los siguientes comandos uno tras otro y debes de dar
enter despues de cada uno (obviamente cuando cada uno termine su proceso)

Nota: recuerda que tu
usb
 debe de estar vacia pues todos los datos que tengas dentro se borraran
con este proceso

Comenceos:

diskpart

list
disk
 (fijate que numero se le asigno a tu
usb
) Recuerda el NUMERO no la letra
este comando le asigna un numero a las unidades de disco que tengas en tu computadora asi que ten cuidado
de seleccionar el numero de tu
usb
 y no de tu disco duro

select
disk
 # (cambia el signo de gato por el numero que se le asignó a tu unidad)

clean

create partition primary

select partition 1

active

format fs=fat32 (aqui esperamos a que termine de formatear)

assign

exit (este comando hara que salgas de la herramienta diskpart no del cmd)

paso 4 sin cerrar el CMD (donde hicisté el procedimiento anterior)
introduce el DVD de
windows
 7 con una sola version o todas las versiones

y con el siguiente comando en el cmd copiaremos el contenido del
dvd
 a la
usb


xcopy A:*.* /s /e /f B:

En lugar de la letra A: usaremos la letra de la unidad donde esta el
dvd
 de
windows
 7
y en lugar de B: usaremos la letra que tiene asignada tu
usb


por cierto este ultimo comando es el que se tarda más, asi que sean pacientes

Listo ahora ya has creado una usb booteable con windows 7
y todo lo que te queda es instalarlo en donde lo desees.


fuente:
http://www.taringa.net/posts/apuntes-y-monografias/8928052/Crear-un-USB-booteable-de-windows-7-y-windows-8.html 

lunes, 20 de octubre de 2014

oVirt en Fedora

oVirt en Fedora
En esta nota vamos a introducirnos acerca de que es Ovirt y mencionar los elementos que la componen. Para eso primero vamas a ver un pantallazo general acerca de lo que es Ovirt.
Comenzemos con un breve resumen:
oVirt es una plataforma de virtualizacion open source por la cual podemos administrar por medio de una aplicación web nuestra infraestructura, actualmente en su comunidad oVirt[1] podemos encontrar muchisima informacion acerca del estado del proyecto, ademas tambien Red Hat esta detras de este proyecto dado que su producto de virtualizacion RHEV proviene de oVirt. Podriamos decir que es la version open source que compite con VMware VSphere a nivel de soluciones de virtualizacion en datacenters. OVirt utiliza libvirt lo cual permite manejar diferentes maquinas virtuales corriendo en diferentes backed, incluyendo KVM,Xen y VirtualBox[2], sin embargo el foco principal de oVirt es KVM.
OVirt tiene una aplicación de administracion muy sofisticada muy util para los administradores de sistemas, pero tambien posee una interfaz de consola de texto muy similar a la de virsh por la cual podemos realizar las mismas tareas que hacemos por la web. Esta interface de administracion nos da un panel central de configuracion en la cual podemos manejar todo el storage,red , recursos de las vm, sistema de reportes, manejo de roles de administracion para determinados usuarios en donde se le aplica que perfil usa para que pueda hacer determinadas tareas de administracion u solo un uso basico, y por supuesto todo lo referente a la virtualizacion de nuestra infraestructura.
oVirt puede manejar multiples hosts, estos host servers diferentes del nodo que se instala el producto ovirt-manager se comunican por medio de https con xml-rpc por medio de un agente instalado en el servidor – VDSMd (Virtual Desktops and Servers Manager daemon), este ultimo se comunica con libvirt para tener el control de las maquinas virtuales. Por medio de VDSMd tambien configura la parte de networking ( Vlans, MTU , multiples gateways, y soporte para OpenStack Neutron,entre otras).
OVirt esta escrito en Java, con JBoss como servidor de aplicaciones y GWT como framework grafico. VSDMd esta escrito en python.
Arquitectura:
La arquitectura de oVirt[7] en un aspecto general la podriamos definir de la siguiente manera:
Partiendo del modelo anterior una vista rapida y estandar de oVirt consta de tres partes primeramente:
ovirt-engine el cual es usado para deployar, monitorear, mover,parar y crear imagenes de VM, configurar storate, redes, etc.
Uno o moas hosts (nodes), en donde correran las maquinas virtuales (VM)
Uno o mas nodos Storage, en donde estaran las imagenes ISo que corresponden a cada VM
Tambien se necesita un servicio de autenticacion para manejar todo el sistema de administracion de usuarios para ovirt-engine, para eso se puede usar Active Directory, LDAP, IPA.
Los nodos son sistemas GNU/Linux con VDSM y libvirt instalados, tambien con otros paquetes extras para poder habilitar la virtualizacion de networking y otros servicios del sistema. Fedora 17 fue la primera version que soporto oVirt para instalar ovirt-engine o la iso personalizada llamada oVirt-node que contiene basicamente lo justo y necesario para la virtualizacion del sistema como nodo.
Los nodos de Storage pueden ser block o file storages, tambien pueden ser locales o remotos, accedios por NFS tambien. Otro feature imporante es el uso de Gluster para storage compartidos, tambien tenemos iscis, FCoE. Los nodos de storage son agrupados en pools de storage para poder brindar alta disponibilidad y redundancia, para mas informacion podemos ver VDSM Storage Terminology[8], que basicamente resume el concetpo de lo que son los Storage Pool, Storage Domain, Image, Volume/Snapshot.
Podriamos desglozar un poco mas el modelo de arquitectura en la siguiente imagen:
Sus componentes principales son:
1. Engine (ovirt-engine) – Maneja los host oVirt, y permite que los administradores creen y deployen nuevas VMs.
2. Admin Portal – Aplicacion web que permite realizar diversas tareas avanzadas de administracion.
3. User Portal – Una aplicación web mas simple para determinados casos de administracion mas basicos.
4. REST API – Una API que permite realizar diversas tareas de virtualizacion, se puede usar desde la linea de compandos o por medio del SDK de python
5. CLI/SDK – La interface CLI y SDK permiten un metodo de comunicación hacia el engine por medio de scritps.
6. Database – La base de datos Postgres es usada por el engine para poder proveer de persistencia para cada configuracion que ovirt realiza con cada componente..
7. Host agent (VDSM) - El engine oVirt se comunica con VSDSM para pedirle realizar determinadas acciones sobre las VMs
8. Guest Agent – El agente que corre dentro de cada vm provee informacion acerca de los recursos a oVirt engine. La comunicación se realiza atraves de una conecion serial virtualizada.
9. AD/IPA – Servicios de Directorio. Engine los utiliza para recibir informacion correspondientes de los usuarios y grupos asi puede determinar los mecanimos de permisos.
10. DWH (Data Warehouse) – El compontente data warehouse realiza diversas tareas ETL en la data extraida de la base usando Talend , y asi inserta esta en el historial de la base.
11. Reports Engine - Gneracion de reportes basado en la informacion historica de la DB, de diversos tipo como el uso de recursos,etc, los reportes que usa son Jasper
12. SPICE client – El memto de accceso de os usuarios a las VMs.
Otro grafico que podriamos poner para redondear un poco mas , asi igual recomiendo mirar la documentacion oficial para ahondar mas a fondo.
Versiones de oVirt y features:
oVirt actualmente en Fedora se encuentra en la version 3.2 para Fedora 20[3] pero en el proyecto ya tenemos la version 3.3 como estable[4]. Son muchisimas las caracteristicas que posee ovirt[5,6], pero podriamos mencionar algunas mas importantes.
Alta Disponibilidad : Reiniciar los Guests VMs de un host con errores automaticamente a otro host
Migracion en caliente de VMs: Mover las VM que esta corriendo en otro host sin donwtime.
Migracion en caliente de Storage: Poder mover una VMs tambien con su disco de un storage domain a otro.
Scheduler de Sistema: Balanceo continuo de los recursos de las VM según politicas o uso del host.
Power Saver: Concentrar las maquinas virtuales en la menor cantidad de servidores durante las horas no pico
Administrador de Mantenimiento: No hay tiempo de inactividad en las máquinas virtuales durante las ventanas de mantenimiento programadas cuando por ejemplo se hace parcheo del Hypervisor.
Administrador de Imagenes: Creacio de VM basadas en plantillas, thin provisioning y snapshosts. Posibilidad de hacer en caliente
Monitoreo y reportes: Para cada item del sistema – VM guest, hosts, networking, storage,etc
OVF Importar/Exportar: Importar y exportar VM y plantillas usando OVF files.
V2V: Convertir Vms desde Vmware y RHEL/Xen a oVirt
Storage: Soporte para iSCSI, FCoE, NFS, y Gluster para storage compartidos.
Instalacion:
Ahora que ya vimos un patanllazo general del producto vamos a ver un poco los requirimientos de instalacion y los pasos a seguir para una instalacion basica y tambien algunas capturas de las pantallas mas comunes.
Vamos a ver una serie de 7 pasos para insalar tanto el oVirt-engine y el ovirt-node[9] en el mismo equipo, lo cual no es lo mas recomendado pero para probarlo sirve , dado que lo ideal es instalarlo todo por separado, en un nodo el ovirt-engine y en otro utilizar la iso de ovirt-node o instalar vdsm y otros paquetes para transformar esa distro en un nodo ovirt. Esta el camino mas dificil que es buildear desde las fuentes el oVirt-engine[10] y el oVirt-node[11]
Requerimientos de Hardware
4 GB Memoria
20 GB disk space
Opcional
Network storage
Software
Fedora 19 or Red Hat Enterprise Linux 6.4 (o similar)
Navegadores recomendados
Mozilla Firefox 17 or later
Internet Explorer 9 or later
Los siguientes pasos estan para Fedora 19, pero se utiliza el repo de ovirt porque la version 3.3 no esta disponible para Fedora, recien en Fedora 20 esta la 3.2.
Fedora 19 
0. Agregar el repositorio oficial de oVirt para Fedora.
sudo yum localinstall http://ovirt.org/releases/ovirt-release-fedora.noarch.rpm
Esto agregara el repositorio de oVirt a tu equipo permitiendo tener los ultimos paquets de oVirt
Tambien esto habilitara el repositorio virt-preview en tu equipo dandote acceso a las versiones ultimas de libvirt y KVM
1. Instalar oVirt Engine.
sudo yum install -y ovirt-engine
2. Opcionalmente se puede instalar el paquete All-In-One plugin si se desea tener el host de VMs dentro del Engine Host
sudo yum install -y ovirt-engine-setup-plugin-allinone
3. Set up oVirt Engine.
sudo engine-setup
4. Seguir los pasos que van saliendo en patanlla para configurar e instalar el engine.
5. Una vez terminada satifactoriamente la instalacion de oVirt Engine, tendra en pantalla las instrucciones para poder acceder al panel de administracion web de oVirt
6. ¿Eso fue todo?, querian algo mas complicado ??, ya se encuentra todo instalado.
7. En el caso que instalamos solo el oVirt-node, hay que seguir otros pasos para instalar los oVirt Host[12]
Una pantalla de como quedaria nuestro portal recien instalado, en este caso hay un par de cosas mas.
Para la proxima entrega vamos a ver como instalarlo de forma separa paso a paso mostrando cada pantalla.
Les dejo estos slides[13] que explican mas en profundidad como funciona todo.
Referencias:
[0] Sacado de http://www.itrestauracion.com.ar/?p=1505

[1] http://www.ovirt.org/Community
[2] http://libvirt.org/drvvbox.html
[3] https://fedoraproject.org/wiki/Features/oVirtEngine_3.2
[4] http://resources.ovirt.org/releases/
[5] http://www.ovirt.org/OVirt_3.2_release-management#Features
[6] http://www.ovirt.org/OVirt_3.3_release-management#Features
[7] http://www.ovirt.org/Architecture
[8] http://www.ovirt.org/Vdsm_Storage_Terminology
[9] http://resources.ovirt.org/releases/3.3/iso/ovirt-node-iso-3.0.1-1.0.2.vdsm.fc19.iso
[10] http://www.ovirt.org/Building_oVirt_engine
[11] http://www.ovirt.org/Node_Building
[12] http://www.ovirt.org/Quick_Start_Guide#Install_Hosts
[13] http://www.ovirt.org/OVirt_Slide_Decks

lunes, 13 de octubre de 2014

Instalar Adobe Reader vía GPO

Uno de los principales problemas de los administradores de sistemas es la distribución de programas de terceros en entornos empresariales.
En ocasiones, podemos usar un simple script que instale la aplicación deseada. No obstante, a no ser que dicho script este algo elaborado, es posible que instalemos una aplicación varias veces en el mismo equipo con las consecuentes perdidas de rendimiento y ancho de banda.
Dado que Active Directory implementa políticas de grupo para la instalación de aplicaciones es más sensato usar estas.
Vamos a ver como instalar Adobe Reader X por medio de una política de grupo.

Instalando Adobe Reader
Aunque Adobe es una aplicación gratuita si queremos distribuirlo en nuestro entorno empresarial debemos solicitar una licencia. Dicha licencia también es gratuita.
Una vez que tengamos nuestra licencia, descargamos el paquete msi del Adobe Reader X del siguiente sitio FTP.
ftp://ftp.adobe.com/pub/adobe/reader/win/
Personalizando el Paquete de Instalación
Aunque que podemos distribuir el paquete msi tal cual lo hemos descargado, merece la pena ver brevemente como modificar su comportamiento por defecto.
Podemos alterar la forma en que los paquetes msi se instalan usando distintos modificadores cuando los instalamos vía línea de comandos o por medio de un script.
Sin embargo cuando usamos una política de grupo o GPO la instalación se realiza de forma silenciosa sin interacción del usuario y no es posible especificar estas opciones. En caso de querer alterar las opciones de la instalación debemos editar el paquete msi con una herramienta de terceros o usar ORCA de Microsoft.
Por suerte, Adobe nos simplifica el trabajo y proporciona un asistente de configuración de su paquete msi que puede encontrase en este link.
Una vez instalado podemos abrir el paquete msi y modificar su comportamiento en la instalación.

Algunas de las opciones interesantes de las que disponemos son: Habilitar la optimización, Activar la cache, elegir el tipo de instalación, posponer el reinicio,

suprimir el mensaje EULA cuando el usuario abre el programa por primera vez,

o eliminar los accesos directos del escritorio o del menú inicio.

También disponemos de un editor donde podemos cambiar cualquier valor posible del paquete msi. Aquí recomiendo deshabilitar el del servicio de actualizaciones de Adobe ya que seremos nosotros quienes vamos a actualizar adobe a través de las GPO. Para esto buscamos el campo InstallService y cambiamos el valor de la columna StarType a 4.

Una vez realizados los cambios deseados guardamos el paquete.
Si recibimos un error indicando que no se encuentra el archivo Setup.ini. Lo único que tenemos que hacer es meter un archivo vacío con ese nombre en la carpeta donde está el paquete msi.

Si examinamos el directorio donde hemos guardado el paquete vemos que se ha creado un archivo con extensión mst. Este archivo contendrá las modificaciones efectuadas sobre el paquete.

Creación de la GPO
La ruta de nuestro paquete debe ser accesible por todos los equipos del dominio, así que lo lógico es tenerlo en una unidad de red compartida con permisos de lectura para todos los usuarios.
Para crear la política abrimos el  gestor de políticas de grupo en el controlador de dominio y creamos una nueva política. Editamos y buscamos la siguiente ruta Configuración del equipo => Directivas => Configuración de software => Instalación de software.
Pinchamos con el botón derecho => Nuevo => Paquete…

Buscamos el paquete en la carpeta compartida y pinchamos en Abrir.

Se nos da a elegir dos métodos para implementar el software. Publicada se usa cuando asignamos esta GPO por usuario. La aplicacion no se instalara pero estara disponible para el usuario en Agregar o Quitar Programas en el Panel . En Asignada sin embargo el paquete se instalará sin interacción ninguna del usuario.

Si hemos hecho modificaciones sobre el paquete msi debemos pinchar en Avanzada para seleccionar las el fichero mst. Para esto nos vamos a Modificaciones => Agregar… Buscamos el archivo mst y pinchamos en Abrir.

En unos instantes veremos como el paquete se ha agregado a la lista de paquetes a instalar.
Si queremos probar la esta nueva política podemos forzar las politicas de grupo con el comando “gpupdate /force” tanto en el servidor de dominio como en el equipo donde queremos aplicarla. Si después reiniciamos podemos observar como Adobe Reader se ha instalado correctamente con las modificaciones deseadas.
MUY IMPORTANTE, hay que escoger la versión que corresponda con el idioma en el que esté instalado Windows en los clientes donde vamos a distribuir el paquete. Si por alguna razón queremos Adobe Reader en un lenguaje diferente debemos pinchar con el botón derecho sobre el paquete => Propiedades => Implementación, Opciones avanzadas…  y luego marcar la casilla Omitir el idioma al implementar este paquete.

Referencias

Deploying Adobe Reader X - http://blog.stealthpuppy.com/deployment/deploying-adobe-reader-x/

Deploy Adobe Reader using Group Policy - http://mysysadmintips.com/index.php/active-directory/24-deploy-adobe-reader-using-group-policy

Windows Installer - http://en.wikipedia.org/wiki/Windows_Installer

Introducción a Instalación de software de Directiva de grupo - http://technet.microsoft.com/es-es/library/cc738858%28WS.10%29.aspx

CÓMO: Utilizar Directiva de grupo para instalar software de forma remota en Windows 2000 - http://support.microsoft.com/kb/314934/es

How to use the Orca database editor to edit Windows Installer files - http://support.microsoft.com/kb/255905

martes, 23 de septiembre de 2014

Recorrer un GridView y verificar si un CheckBoxField esta Checked o no usando C# y ASP.NET

Hola Amigos, si te gusta los posts en mi blog, por favor sígueme en Twitter bajo @tmaoner para ver mis aportaciones. 





Para la mayoría de ustedes que leen mi blog, este post es bien simple, pero créanme que muchos en la comunidad no lo sabían el día de hoy, por lo tanto los posteo para que los que me pidieron que lo hicieran lo puedan leer hoy en la noche y hacerlo funcionar en sus páginas.





El problema cae en lo siguiente, cuando tenemos un GridView y en una de las columnas manejamos un CheckBoxField  varios de los programadores con los que hable hoy no sabían cómo verificar del lado de la programación al momento de recorrer el GridView si estaba Checked o no.





Es fácil poder verificarlo, primero que todo deben de recorrer el  GridView , esto se hace de la siguiente forma usando un foreach :





        foreach (GridViewRow grd_Row in this.grd_Items.Rows)


        {


        }





Si ven en el foreach vamos a utilizar GridViewRow para ir utilizando cada fila. Después de tener este foreach vamos a insertar en el el siguiente código:





CheckBox chk_Publicar = (CheckBox)grd_Row.Cells[6].Controls[0];





Lo que estamos hacienda acá es que vamos a declarar un CheckBox  y en el mismo lo vamos a instanciar por medio de elegir la columna donde se encuentra el CheckBoxField  y con el método Controls  el cual le vamos a indicar que esta columna es especial.





Ya cuando tenemos nuestro CheckBox declarado, ya podemos hacer uso de el de forma normal, para verificar si esta Checked o no, ya pueden usar un simple if:





            if (chk_Publicar.Checked)


            {


                // Codigo


            }


            else


            {


                // Codigo


            }





Ya con esto, pueden hacer uso de cualquier CheckBoxField  en un GridView. El código final, debe de quedarles algo parecido:





        foreach (GridViewRow grd_Row in this.grd_Items.Rows)


        {


            CheckBox chk_Publicar = (CheckBox)grd_Row.Cells[6].Controls[0];





            if (chk_Publicar.Checked)


            {


                // Codigo


            }


            else


            {


                // Codigo


            }


        }

martes, 16 de septiembre de 2014

WPHardening: Automatizar la Fortificación de WordPress

La seguridad en WordPress es un tema más que importante hoy en día. Constantemente vemos bugs en plugins como el RFU de MailPoet o el 0day de TimThumb que ponen en riesgo las instalaciones de estos frameworks. Pero no solo eso, hay ataques de fuerza bruta contra WordPress, ataques de elevación de privilegios en WordPress, fallos de privacidad con la indexación de borradores,configuraciones inseguras que permiten el registro de usuarios, configuraciones inseguras que permiten listar los plugins instalados y un montón más de exploits conocidos para atacarlos.

Figura 1: WP Hardening ayuda a mejorar la seguridad de tu WordPess

Cada instancia de WordPress, una vez implantada, puede ser fortificada - igual que se fortifica el servidor Linux donde se esté ejecutando - cambiando permisos, borrando archivos de instalación, cambiando configuraciones o instalando plugins de seguridad.

WPHardening es una herramienta creada en Python, bajo licencia libre GNU/GPLv3, con la idea de no ser un plugin como tal de este framework, de esos que estamos acostumbrados a instalar y que en muchos casos extienden su funcionalidad. Es una herramienta de auditoria diseñada con la idea concreta de poder automatizar la eliminación de archivos innecesarios, dar recomendaciones de plugins de seguridad, aportar un asistente para la creación del archivo de configuración y algunas cosas más que paso a contaros.

¿Que se puede hacer con WPHardening? 

Está diseñada como una herramienta de consola, con el objetivo de ser versátil y que pueda ser utilizada con diferentes argumentos de invocación - con los que se podrán realizar diferentes acciones - y desde diferentes scripts automatizados en procesos completos de cumplimientos de seguridad.

Figura 2: WPhardening en su GitHub

Para comenzar a utilizar esta herramienta, lo primero que vamos a hacer es descargar WPHardening desde su repositorio en GitHub de la siguiente manera:

$ git clone https://github.com/elcodigok/wphardening
Cloning into 'wphardening'...
remote: Counting objects: 534, done.
remote: Total 534 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (534/534), 121.84 KiB | 93 KiB/s, done.
Resolving deltas: 100% (370/370), done.


$ cd wphardening/

Ahora vamos a necesitar tener descargado y descomprimido en algún directorio de nuestro equipo una versión de WordPress, hasta la fecha de hoy se recomienda la última versión estable 4.0 llamada “Benny”  y que fue liberada hace unos días. En estos ejemplos, la copia de WordPress 4.0 que hemos descargado está en el siguiente PATH:

/home/cspammers/wordpress

Con estos dos componente ya podemos utilizar WPHardening y automatizar su fortificación sin necesidad que el framework de WordPress se encuentre instalado o esté en ejecución dentro del servidor.

Para obtener ayuda sobre la herramienta y cuáles los parámetros que podemos utilizar hay que ejecutar:

$ ./wphardening.py -h

El único flag obligatorio es ( -d ) donde se indica el PATH en el que se encuentra la instancia deWordPress previamente descargado. Haciendo uso de este único argumento podemos validar que realmente sea un proyecto de WordPress. Se hace de la siguiente manera:

$ ./wphardening.py -d /home/cspammers/wordpress -v

Si no se especifica ningún archivo de Log para guardar los resultados salida con la opción ( -o ), todos los cambios van a ir almacenándose en el archivo wphardening.log de esa forma vamos a poder seguir todo lo que se fue ejecutando.

Para evitar el síndrome 777 en donde el usuario regala permisos a los archivos y directorios,wphardening tiene la posibilidad de hacer un control de permisos de seguridad adecuado utilizando la opción -c ó --chmod. Este sería un ejemplo de uso para mejorar los permisos de los archivos deWordPress:

$ ./wphardening.py -d /home/cspammers/wordpress --chmod

En cada proyecto que utilizamos de WordPress podemos encontrar archivos de documentación o presentación como son los ficheros de readme.html o de licencias que son muy utilizados en fases de fingerprinting para detectar la versión exacta de nuestra instalación, rutas dentro del servidor y hasta posibles configuraciones inseguras. Para evitar tener que ir eliminando manualmente todos estos archivos dentro de un proceso de fortificación, podemos utilizar la opción -r o --remove conWPhardening:

$ ./wphardening.py -d /home/cspammers/wordpress --remove

Figura 3: Ejemplo de borrado de archivos de licencia e información en WordPress

Para dificultar aún más los procesos de fingerprinting se puede eliminar la versión de WordPress de todos los lugares en los que se encuentra y con ( -f ) las marcas buscadas por las herramientas populares de scanning de WordPress, para ello se puede utilizar las opción de ( -v es el modoverbose ):

$ ./wphardening.py -d /home/cspammers/wordpress --delete-version -f -v

También es posible crear y personalizar el archivo robots.txt en donde le indicamos a las arañas de los motores de búsqueda cuáles los límites y permisos que vamos a asignar usando la opción -b o --robots:

$ ./ wphardening.py -d /home/cspammers/wordpress --robots

En este último tiempo la libreria TimThumb, una de las más usadas para manipular imágenes en PHP fue vulnerada en varias oportunidades. El problema radica en que los usuarios no acostumbran a actualizarla cuando esta incluida en su tema del sitio, por lo que wphardening cuenta con un diccionario de búsqueda para alertar al usuario sobre la existencia del mismo:

$ ./wphardening.py -d /home/cspammers/wordpress --timthumb -v

Una herramienta que se incorporó en estas últimas versiones es la posibilidad de contar con un asistente para la creación del archivo de configuraciones wp-config.php, que va a generar un archivo llamado wp-configu-wphardening.php para que sea renombrado en la instalación. Esto se puede activar de la siguiente manera:

$ ./wphardening.py -d /home/cspammers/wordpress --wp-config

La popularidad de WordPress llegó por la gran facilidad que tiene para extender sus funcionalidades y crear los plugins. Es por ello que desde WPHardening recomendamos varios plugins específicamente de seguridad, tales como: AntiVirus, Bad Behavior, Block Bad Queries, Exploit Scanner, Latch, Limit Login Attempts, One-Time Password, UPDATE NOTIFICATIONS, User Locker, WordPress File Monitor Plus, WP Login Security 2, WP Security Scan y WP-DBManager.


Figura 4: Vídeo Tutorial de integración de Latch para WordPress.
También puede ser usado para gestionar muchos WordPress con un solo Latch.

Para comprobar si puedes mejorar la seguridad de tu WordPress con alguno de ellos puedes usar la siguiente opción:

$ ./wphardening.py -d /home/cspammers/wordpress --plugins

Finalmente, en caso que nuestro servidor acepte la navegación entre sus directorios, podemos crear - con un solo comando - todos sus archivos index.php y una directiva en el archivo .htaccess para evitar que alguien liste el contenido de alguno de nuestros directorios:

$ ./wphardening.py -d /home/cspammers/wordpress --indexes

Dijimos al principio, que WPHardening es una herramienta muy versátil que nos va a permitir ejecutar la cantidad de opciones previas a una instalación o actualización, por lo cual podríamos llegar a combinar todos sus argumentos de la siguiente manera:

$ ./wphardening.py -d /home/cspammers/wordpress -c -r -b -f -t --wp-config --delete-version --plugins --indexes -o wordpress4.log -v

Conclusiones

WPHardening es un proyecto muy joven, en una fase muy temprana, pero que está siendo cuidado con mucho cariño e ilusión, por lo que aceptamos cualquier sugerencia o idea de mejora. Están todos invitados a colaborar y probar WPHardening, reportar fallos o cambios desde el repositorio en GitHub, para que puedan seguir creciendo con mejoras y nuevas funcionalidades. Ya estamos comenzando a ver que es lo nuevo para su version 1.4 así que cualquier idea será bienvenida.

Saludos!

Autor: Daniel Maldonado (@elcodigok)
http://caceriadespammers.com.ar

ReblogUn informático en el lado del mal
http://www.elladodelmal.com/

lunes, 1 de septiembre de 2014

crea usuario con privilegios de root

Existen varios métodos para crear un nuevo usuario con privilegios de root en Linux.

método rápido

se trata de crearlo de golpe añadiéndolo al grupo desde el propio comando useradd.
Añadir el usuario:
sudo useradd -u 0 -o -g 0 nombreusuario
Establecer la nueva contraseña:
sudo passwd nombreusuario
Este método hay veces que no va del todo bien ya que no crea la carpeta home personal y hay problemas con el historial bash en algunos VPS.

método típico

es mas largo, pero es el que se usa siempre.
Añadir el usuario:
sudo adduser nombreusuario
sudo /usr/sbin/visudo
En este fichero, añadimos después de la línea donde pone ‘root’, el nombre de nuestro usuario, con las líneas de ALL iguales.
# User privilege specification
root            ALL=(ALL:ALL) ALL 
nombreusuario ALL=(ALL:ALL) ALL

eliminar usuario

Si nos hubiésemos equivocado, podemos eliminar el usuario:
sudo userdel nombreusuario
O también cambiar la contraseña:
sudo passwd nombreusuario
Ahora ya nos podremos loguear con el nuevo usuario.

Habilitar o deshabilitar el login de root en SSH

Por razones de seguridad se suele desactivar el acceso root via SSH. Si queremos habilitarlo o deshabilitarlo debemos hacer lo siguiente:
# cd /etc/sshd
# vi sshd_config
Deshabilitarlo
PermitRootLogin no
Habilitarlo
PermitRootLogin yes
Despues de guardar los cambios reiniciamos el servicio SSH.
EN FREEBSD
/etc/rc.d/sshd restart
EN LINUX
/etc/init.d/sshd restart