Friday, September 14, 2012

Cómo identificar un sitio hecho con SharePoint

A raíz de interesarme la seguridad de los sitios webs creados a partir de SharePoint, me puse a pensar un poco en cómo se podría identificar un sitio de Internet hecho en SharePoint y se me ocurrió primero:

Cómo podría encontrar sitios por ej. con algún buscador? Tienen algún patrón en el source o su url y la respuesta es sí:

A nivel source tenemos el siguiente patrón típico también de sitios SharePoint 



Un patrón es tener algo así como el sitio/Pages/nombrearchivo.aspx. Con google podríamos empezar buscando: allinurl: Pages/Home.aspx y la lista de resultados muestra

que si bien no necesariamente todos son sitios SharePoint ya tenemos una buena aproximación.
Ahora bien tomemos algunos de ellos y modifiquemos su url de la siguiente forma http://sitio.tld/_layouts/error.aspx y vemos qué sucede:

Perfecto, estos si ya tiene más pinta de ser sitios SharePoint, pero para corroborar también podríamos ver cuál sería la versión del build utilizado de la siguiente forma:
Por lo general cuando se utiliza SharePoint como sitio de Internet, las empresas suelen cambiar las master pages y crear la suya propia, para dar un toque de personalización al diseño del sitio. Pero la mayoría de las veces se olvidan de eliminar archivos que SharePoint trae por defecto:

Algunos otros archivos interesantes: http://sitio.tdl/_layouts/dsg_eula.htm

Otras urls interesantes con las cual probar:
http://sitio.tld/_layouts/xsl/internal.xsl
http://sitio.tld/_vti_bin/microsoft.sharepoint.client.xml
http://sitio.tld/_vti_bin/namespaces.xml
http://sitio.tld/_layouts/images/accesssetting.gif

Aunque como dice el gran Chema Alonso, en su artículo, lo más recomendable es utilizar herramientas automatizadas como Search Diggity y utilizando el siguiente diccionario de datos SharePoint Google Dictionary. Un artículo imperdible que en realidad recomiendo leer.


Fuentes: 


Friday, September 07, 2012

Eliminar metadatos de archivos

Al crear un archivo es muy común que se asocien al mismo ciertos metadatos, que es información adicional como ser fechas de creaciones, aplicación utilizada, usuario creador, ubicaciones donde se almacena, etc. Esta información pueden en muchos casos ser sensible. Imagínense el caso de un archivo que revela entre otras cosas nuestro usuario de PC y/o Active Directory, esto permitiría a cualquier persona que posea el archivo hacerse con esta información de una manera muy sencilla, ej subiéndolo a la FOCA Online de Informática64 http://informatica64.com/FOCA/default.aspx
Viendo un poco sobre metadatos en archivos y la información sensible que se puede extraer de ellos, me pregunto se puede eliminar esa información y la respuesta es obvia: SÍ y de manera muy sencilla.
En windows 7 y nativamente es posible hacerlo para cualquier archivo simplemente listando sus propiedades y la solapa de detalle tenemos la opción Quitar Propiedades e información personal.

Para el ejemplo anterior este sería el resultado de ejecutar esa opción, incluso pudiendo generar un nuevo archivo sin esos metadatos o aplicándolo sobre el original.
Luego también para archivos como por ej pdf, podemos recurrir a BeCyPDFMetaEdit una aplicación muy buena para realizar esta tarea http://www.becyhome.de/becypdfmetaedit/description_eng.htm 

Como siempre espero que les sea de utilidad.

Thursday, August 09, 2012

Pesca Esquina Corrientes entre Amigos

Fueron dos días increíbles, el reencuentro con mis amigos del alma, Pepe, Norberto y José Fernandez Codazzi a quienes estoy muy agradecidos por todo el cariño y la amistad eterna. Un abrazo también a Mario  Mamadera el guía y amigo que nos brindó toda su sabiduría ribereña impagable.
Bueno basta de vueltas y recordemos el viaje.
Salimos con mi hermano Ezequiel el día jueves 2 de agosto a las 4:20 aprox. desde Virasoro Corrientes hacia Esquina, según el siguiente recorrido

Ver Gob. Ing. Valentín Virasoro Corrientes en un mapa ampliado 512Km pero MENTIRA google, esa ruta es muy mala.
Si tienen que ir a esquina por Ruta 14 vayan por la ruta 123 que pasa por Mercedez y salgan en Goya a 113 km de Esquina. La 126 es sólo para romper los autos está destruida.
Bueno esto hizo que nos retrasemos pero nada aminoró nuestras ganas de llegar y llegamos a Esquina a las 11:30. Llegados allí ya nos esperaban los chicos con un buen asado y vinos obviamente para ponernos al día.
El día siguiente arrancó un poco tarde por el embotellamiento del día anterior y decidimos ir a pescar a las 15hs teníamos la lancha en el agua.


Entrando al Paraná:

Primer dorado de Ezequiel

Parrillerón dijo Norberto:

Ezequiel Segundo:

Wednesday, August 08, 2012

Otro riesgo de almacenar todo en la nube


Un hacker puede realizar ingeniería social, y apoderarse o borrar todo lo que usted tiene almacenado en la nube. http://www.wired.com/gadgetlab/2012/08/apple-amazon-mat-honan-hacking/all/
Resulta que, una dirección de facturación y los cuatro últimos dígitos de un número de tarjeta de crédito son las únicas dos piezas de información que alguien necesita para entrar en su cuenta de icloud. Una vez suministrada, Apple emitirá una contraseña temporal, y que la contraseña le da acceso a icloud.
El soporte técnico de Apple confirmó a Bruce Schneier dos veces durante el fin de semana que todo lo que necesita para acceder a AppleID de alguien es la correspondiente dirección de correo electrónico, un número de tarjeta de crédito, la dirección de facturación, y los cuatro últimos dígitos de una tarjeta de crédito registrada.
He aquí cómo un hacker consigue esa información:
En primer lugar llamar a Amazon y decirles que usted es el titular de la cuenta, y desea agregar un número de tarjeta de crédito a la misma. Todo lo que necesitas es el nombre de la cuenta, una dirección de correo electrónico asociada, y la dirección de facturación. Amazon a continuación, le permite introducir una nueva tarjeta de crédito. (Utiliza un número de tarjeta de crédito falsa de algún sitio web que genera números falsos de tarjetas que cumplen con la industria pasando el algoritmo de auto-chequeo.) Luego finaliza la llamada.
A continuación vuelve a llamar, y le dice a Amazon que ha perdido el acceso a su cuenta. Al proporcionar un nombre, dirección de facturación, y el número de tarjeta de crédito nueva que dio a la compañía en la llamada anterior, entonces Amazon le permitirá agregar una nueva dirección de correo electrónico a la cuenta. Desde aquí, va al sitio web de Amazon, y solicita un restablecimiento de contraseña a la nueva cuenta de correo electrónico. Esto le permite ver todas las tarjetas de crédito en el archivo de la cuenta, no los números completos, sólo los últimos cuatro dígitos. Pero, como sabemos, Apple sólo necesita los últimos cuatro dígitos.
Artículo completo en inglés http://www.schneier.com/blog/archives/2012/08/yet_another_ris.html

Thursday, July 26, 2012

Cómo desactivar el contestador del celular

Nos están cobrando por llamadas no efectuadas?
En argentina las compañías de telefonía celular no pueden facturar a partir de que se aprieta la tecla send del teléfono http://www.lanacion.com.ar/1478159-cobraran-la-llamada-desde-que-se-atiende, sino recién cuando la llamada es atendida en el destino y eso está muy bien, pero qué sucede si de repente notamos que cada vez que llamamos en nuestros celulares nos aparece el mensaje desvío de llamadas y somos redirigidos en el mejor de los casos a un buzón? La llamada es facturada como efectuada.
En los últimos días me he notado un incremento en este tipo de comportamiento al realizar llamadas a celulares de distintas compañías y decidí hacer lo siguiente:
Si alguien me llama y no puedo atenderlo seguramente le devolveré la llamada, o tal vez me vuelva a llamar, así que en mi caso al menos no tiene sentido tener activa el buzón de voz, así que puedo desactivarlo. Cómo? muy fácil usando la combinación ##002# y SEND desactivamos el servicio.

Como siempre espero les sea útil.

Tuesday, July 24, 2012

Te robaron el celular con Android?

A raíz de un incidente donde perdí el móvil, me puse a investigar un poco qué aplicaciones pueden ayudarte a recuperarlo. Si bien todavía no tuve ese placer, encontré varias aplicaciones de las cuales utilicé dos y les dejo algunos comentarios:
La primera se llama Plan B, y lo interesante de la misma es que podés instalarla desde play y por ende después de que hayas perdido el cel. También podés localizarlo desde otro teléfono enviando un sms con la palabra "locate" a tu número. Tener en cuenta de que una vez denunciado el equipo como robado es poco probable de que alguien lo conecte tal cual está o incluso si lo enciende no tendría servicio y por ende no sería localizable. De aquí que la próxima voy a tomarme un tiempo antes de denunciarlo como robado.
Descarga y más detalles: https://play.google.com/store/apps/details?id=com.lookout.labs.planb&feature=search_result#?t=W251bGwsMSwyLDEsImNvbS5sb29rb3V0LmxhYnMucGxhbmIiXQ..

La segunda es Where's My Droid que la pueden descargar de https://play.google.com/store/apps/details?id=com.lookout.labs.planb&feature=search_result#?t=W251bGwsMSwyLDEsImNvbS5sb29rb3V0LmxhYnMucGxhbmIiXQ..
Lo interesante de esta aplicación, es que te permite controlar el cel desde cualquier browser con tu cuenta de gmail, pero a diferencia de plan b, debe de instalarse y configurarse previo al extravío. Otra de sus características es que te permite hacerlo sonar enviándole un sms con cierto contenido que es personalizable, del mismo modo podés enviar un sms para que te brinde sus coordenadas haciendo uso del GPS.

Para reprocharles a ambas es que el correo te lo envían exclusivamente a la cuenta de gmail y como por lo gral la cuenta de gmail también la tienes configurada en el cel, es posible que quien tenga tu equipo también esté recibiendo las alertas. Para lo cual recomiendo de todas formas cambiar previamente todas las contraseñas.

Thursday, July 19, 2012

Maldita verdad

Cuánto tiempo ha pasado,
el silencio se ha dormido,
y la lluvia no me deja recordar,
creo sentir que ya te has ido.

Cuánto sufrir por nada,
cuántas caricias gastadas y el silencio
que sólo muestra una foto de tú cara...
dibujada.

Maldita verdad, porqué no es contigo
porqué la ilusión no es más fuerte que el destino
cada amanecer...
te espero y las tardes,
el ocaso huele a soledad de has ido


Cuánto tiempo ha pasado,
el silencio se ha dormido,
y la lluvia no me deja recordar,
creo sentir que ya te has ido.

Cuánto sufrir por nada,
cuántas caricias gastadas y el silencio
que sólo muestra una foto de tú cara...
dibujada.

Maldita verdad, porqué no es contigo
porqué la ilusión no es más fuerte que el destino
cada amanecer...
te espero y las tardes,
el ocaso huele a soledad de has ido
Maldita verdad


Letra: @msilvero
Surca estos mares mi niña y llega al puerto que perteneces!

Thursday, July 05, 2012

Carpediem

Muy bien hablemos de los dos,
yo creo que ya es hora de empezar a seducirnos,
tal vez la noche anterior,
faltó algo de amor para llegar al objetivo.

Sabemos que todo va estar muy bien,
una noche de verano puede aumentar la presión,
yo sé no es cuestión de enloquecer,
pero es que no podemos vivir pensando en la gente.

Como dice un proverbio que no trates de dejar
lo que se puede hacer hoy para mañana,
deberíamos amarnos cuantos antes para no perder las alas... uh uh

Muy bien de mi parta esta ok,
solo falta tu sí para encontrarnos en algún lugar,
voy a llevarte un ramo de ilusiones,
espero que te gusten porque las hice yo mismo.

Tal vez, no sea el mejor,
de los hombres que en tu vida compitieron por amor,
pero hay algo de lo que estoy convencido,
y es que cuando estamos solos te sientes muy bien conmigo.


Como dice un proverbio que no trates de dejar
lo que se puede hacer hoy para mañana,
deberíamos amarnos cuantos antes para no perder las alas
uh uh para no perder las alas, uh uh para no perder las alas.

Letra: @msilvero
Surca estos mares mi niña y llega al puerto que perteneces!

Mi vieja hacker? Estafa con tarjetas telefónicas

Mi madre tiene un local comercial donde entre otras cosas vende tarjetas telefónicas y el otro día me enseñó cómo hacen los estafadores para apropiarse de las mismas sin comprarlas.


Paso 1:
Un amigo de lo ajeno pide una tarjeta de 20 pesos de la compañía X, se retira del local y toma los datos del código de barra de la tarjeta sin abrirla ya que se ven sin retirar el envoltorio transparente.

Paso 2:
Vuelve a cambiar la tarjeta argumentando de que prefiere una de mayor valor, por ej deme una de 30 de la misma compañía. Hecho esto paga la diferencia y se retira. Ya tiene su tarjeta de 30 y el código de barras de la de 20.

Paso 3:
Llama a la compañía X y se inventa una historia como por ej.
Dejé mi tarjeta nueva en un bolsillo del pantalón que puse a lavar y ahora no veo los nros para poder cargarla ó algo menos elaborado: Raspé la tarjeta con una moneda y no veo el código. A lo cual la operadora contesta, no se preocupe tiene un código de barras debajo me lo podría suministrar?
UATATA si te lo paso y listo ya se hizo de una tarjeta de 20 pesos gratis.

Paso 4 (Opcional):
Si tiene buena suerte y lo atiendo yo le doy una salsa que ni les cuento, con lo que me gusta ese deporte!!!!

La verdad que los muchachos no dejan de sorprenderme.

Añadir BypassedSenderDomains múltiples Exchange 2010

Añadir BypassedSenderDomains múltiples

Tal vez lo hayas notado cuando agregas un dominios para evitar que sean inspeccionados por el Content Filtering de Exchange 2010 mediante el comando set-contentfilterconfig, el mismo reescribe la configuración actual. Es decir que si quieres excluir más de un domino tienes que generar previamente una lista y luego guardar los cambios. Para eso se podría hacer algo como lo siguiente si los dominios son relativamente pocos:
Primero para corroborar la configuración actual puedes hacer con el siguiente comando:

Get-ContentFilterConfig | Format-List

Luego para agregar dominios vamos a generar un lista llamada list, de la siguiente forma:
$list = (Get-ContentFilterConfig).BypassedSenderDomains

Y le vamos a agregar a la misma los dominios que querramos:
$List.add(“domain1.tld”)
$List.add(“domain2.tld”)

$List.add(“domain3.tld”)
$List.add(“domain4.tld”)


Una vez que hayamos incluido todos los dominios, procedemos a guardar los cambios con el siguiente comando:
set-contentfilterconfig -bypassedsenderdomains:$list

Esto es todo ya tenemos nuestros dominios excluidos del análisis del filtro de contenidos.

Friday, April 27, 2012

The Health Service could not log on the RunAs account EXAMPLE\user for management group

Me encontré con el siguiente problema en una instalación de Service Manager 2010 SP1 CU3:

Nombre de registro:Operations Manager
Origen: HealthService
Fecha: 4/19/2012 6:43:33 PM
Id. del evento:7000
Categoría de la tarea:(1)
Nivel: Error
Palabras clave:Clásico
Usuario: No disponible
Equipo: SERVER.example.local
Descripción: The Health Service could not log on the RunAs account EXAMPLE\user for management group . The error is Logon failure: unknown user name or bad password.(1326L). This will prevent the health service from monitoring or performing actions using this RunAs account...

La cuestión es básicamente que la cuenta de AD se bloqueaba constantemente. Encontré luego de buscar en varios lugares que podría tratarse de la configuración del conector con active directory, así que lo que hice fue eliminar el conector y volver a crearlo pero esto no solucionó mi problema el error 7000 seguía estando. Así que cree un caso en Microsoft quienes me dieron una mano y detectamos que el problema se producía debido a que el usuario había quedado ligado a la base de datos de ServiceManager específicamente en la tabla CredentialManagerSecureStorage.
Hicimos una consulta de dicha tabla
select * from CredentialManagerSecureStorage
y allí estaba el usuario en cuestión. Así que eliminamos el registro y reniciamos los servicios y todo volvió a funcionar. Cabe destacar que desde la consola de Service Manager no es posible realizar dicha acción porque no basta con modificar los Run As.
Espero les sea de mucha utilidad

Wednesday, February 15, 2012

Error Microsoft.EnterpriseManagement.ServiceManager.UI.Console

No abre la consola de SCSM 2010 SP1 por problemas con la aceleración de video Intel(R) B43 Express Chipset. Me encontré con este problema al instalar la consola sobre Windows 7 Professional i386. La misma no abría arrojando el siguiente error:

Firma con problemas:
Nombre del evento de problema: BEX
Nombre de la aplicación: Microsoft.EnterpriseManagement.ServiceManager.UI.Console.exe
Versión de la aplicación: 7.0.6555.128
Marca de tiempo de la aplicación: 4eb3fbe6
Nombre del módulo con errores: igdumd32.dll
Versión del módulo con errores: 8.15.10.2182
Marca de tiempo del módulo con errores: 4c44e898
Desplazamiento de excepción: 00016776
Código de excepción: c0000409
Datos de excepción: 00000000
Versión del sistema operativo: 6.1.7601.2.1.0.256.48
Id. de configuración regional: 11274
Información adicional 1: 1d75
Información adicional 2: 1d7537ede8bee0a1d08a5f0d2036cc52
Información adicional 3: 4b95
Información adicional 4: 4b95b489ba3f55f3df6127c1ba03f7b1

Para solucionarlo tuve que deshabilitar la aceleración gráfica tocando el registro, incluso creando una clave en:
HKEY_CURRENT_USER\Software\Microsoft\Avalon.Graphics
y agregando una DWORD DisableHWAcceleration con el valor seteado en 1.

Eso es todo, como siempre espero les sirva.

Monday, February 13, 2012

Como cambiar el valor autoincrement de los incidentes SCSM 2010 SP1

De un muy buen artículo encontré algo que andaba buscando y es cómo cambiar el valor autoincremental de los incidentes de System Center Service Manager para empezar desde un valor establecido.
La idea básicamente es acceder mediante el SQL Management Studio a la DB de ServiceManager y consultar el estado actual de los valores de incidentes (ideal no estar dando de alta incidentes en ese momento).
select * from AutoIncrementAvailableRange

Donde vamos a obtener algo similar a esto:

ManagedTypeId ManagedTypePropertyID FirstAvailableValue
F59821E2-0364-ED2C-19E3-752EFBB1ECE9 28B1C58F-AEFA-A449-7496-4805186BD94F 778
2F28A9AE-0E94-C895-C087-B222B231DD46 1C98C323-8C9F-1692-F703-4ED0DAB1F727 3
EF8A786A-5D22-F035-32D7-D0B60D9284AD 76A2A871-BF71-A8BA-85BF-E140D4CF5C9E 5
CA1410D8-6182-1531-092B-D2232F396BB8 9583D0A2-EA9F-C97E-BDCA-7356BD129777 2

Si queremos ver más en detalle todo podemos recurrir a la siguiente consulta:
select

MT.TypeName,

MT.ManagedTypeId,

MTP.ManagedTypePropertyName,

MTP.ManagedTypePropertyID,

AIAR.FirstAvailableValue


from ManagedType as MT, ManagedTypeProperty as MTP, AutoIncrementAvailableRange as AIAR

where MT.ManagedTypeId = AIAR.ManagedTypeId and MTP.ManagedTypePropertyId = AIAR.ManagedTypePropertyId

Luego lo que hacemos es modificar los valores, por ej arrancando en 10000:

update AutoIncrementAvailableRange

set FirstAvailableValue = 10000

where ManagedTypeId = 'F59821E2-0364-ED2C-19E3-752EFBB1ECE9' and ManagedTypePropertyId = '28B1C58F-AEFA-A449-7496-4805186BD94F'

Eso es todo, espero les sirva. La fuente original por Travis Wright MSFT http://blogs.technet.com/b/servicemanager/archive/2010/09/27/top-secret-trick-how-to-change-the-auto-incrementing-value-range.aspx?wa=wsignin1.0

Thursday, February 09, 2012

Como borrar incidentes de SCSM 2010 desde PowerShell

Utilizando SCSM PowerShell Cmdlets Beta 3, una serie de módulos para PowerShell, es posible por Ej. borrar incidentes sin necesidad de tener acceso a la consola de System Center Service Manager 2010.
Acá una guía de cómo instalar los módulos: http://blog.scsmsolutions.com/2011/08/install-smlets-on-server-without-console/

Luego una vez instalado y desde la consola de PowerShell es posible realizar operaciones como las siguientes:
Listar todos los incidentes:
Get-SCSMObject -class (get-scsmclass -name system.workitem.incident$)
Borrar todos los incidentes:
Get-SCSMObject -class (get-scsmclass -name system.workitem.incident$) | remove-scsmobject -force
Así con el resto de los objetos por ej, con las solicitudes de cámbios:
Listar todas las solicitudes de cambios:
Get-SCSMObject -class (get-scsmclass -name system.workitem.changerequest$)
Borrar todas las solicitudes de cambios:
Get-SCSMObject -class (get-scsmclass -name system.workitem.changerequest$) | remove-scsmobject -force

Como siempre espero les sea útil.

Friday, October 16, 2009

Cómo conservar la hora actual en los servidores Linux con zona horaria Argentina

Gracias al gobierno Argentino por ser tan previsor como siempre y avisar con 3 días de anticipación. Cristina te vas de vacaciones este verano, ya las planificaste o es muy apresurado pensar en eso?

Antes que nada comentarles que este procedimiento lo probé con Linux Debian 5.0.3 pero creo que es aplicable a cualquier linux que use tzdata.
En principio vamos a conocer nuestra versión de debian:

cat /etc/debian_version
5.0.3

Luego bajamos el parche en .deb provisto por la GENIA de Marga Manterola (Gracias Marga)

wget http://www.marga.com.ar/~marga/debian/tzdata/tzdata_2009l-0lenny1.1_all.deb

Para otras versiones pueden buscar en el siguiente directorio:
http://www.marga.com.ar/~marga/debian/tzdata/

Pero antes de aplicar el parche vamos a ver qué tiene planeado hacer con la hora nuestro debian para este año:

zdump -v /etc/localtime | egrep "2009|2010"
/etc/localtime Sun Mar 15 01:59:59 2009 UTC = Sat Mar 14 23:59:59 2009 ARST isdst=1 gmtoff=-7200
/etc/localtime Sun Mar 15 02:00:00 2009 UTC = Sat Mar 14 23:00:00 2009 ART isdst=0 gmtoff=-10800
/etc/localtime Sun Oct 18 02:59:59 2009 UTC = Sat Oct 17 23:59:59 2009 ART isdst=0 gmtoff=-10800
/etc/localtime Sun Oct 18 03:00:00 2009 UTC = Sun Oct 18 01:00:00 2009 ARST isdst=1 gmtoff=-7200
/etc/localtime Sun Mar 21 01:59:59 2010 UTC = Sat Mar 20 23:59:59 2010 ARST isdst=1 gmtoff=-7200
/etc/localtime Sun Mar 21 02:00:00 2010 UTC = Sat Mar 20 23:00:00 2010 ART isdst=0 gmtoff=-10800
/etc/localtime Sun Oct 17 02:59:59 2010 UTC = Sat Oct 16 23:59:59 2010 ART isdst=0 gmtoff=-10800
/etc/localtime Sun Oct 17 03:00:00 2010 UTC = Sun Oct 17 01:00:00 2010 ARST isdst=1 gmtoff=-7200
Como podrán ver, si no aplicamos el parche nuestro sistema debería de adelantarse una hora el día Sat Oct 17 a las 23:59:59 y pasar a el Sun Oct a las 18 01:00:00 (Esto DEBERIA de haber sido habitual, porque sería nuestro DST, pero de habitual tenemos poco en este país).

Bueno para corregirlo aplicamos el parche (.deb) que bajamos de la siguiente forma:
dpkg -i tzdata_2009l-0lenny1.1_all.deb

Una vez aplicado el parche podemos observar que ahora nuestro debian no va a realizar ningún cambio a lo largo de este año ni el que viene (Vemos que nos dice Cristina el año que viene).

zdump -v /etc/localtime | egrep "2009|2010"
/etc/localtime Sun Mar 15 01:59:59 2009 UTC = Sat Mar 14 23:59:59 2009 ARST isdst=1 gmtoff=-7200
/etc/localtime Sun Mar 15 02:00:00 2009 UTC = Sat Mar 14 23:00:00 2009 ART isdst=0 gmtoff=-10800

Bueno eso es todo y espero como siempre que haya sido útil.

Thursday, September 10, 2009

Modsecurity-console como servicio

Estuve teniendo algunos probleas con la consola de modsecurity: el application server que trae se inicia desde un script de shell y suele finalizarse el proceso que se inicia con un nohup.
Por eso, lo que hice fue modificar el archivo modsecurity-console que sería el ejecutable del mismo y en la linea 239 donde está lo siguiente:
nohup "$app_java_home/bin/java" -server -Dinstall4j.jvmDir="$app_java_home" -Dinstall4j.appDir="$app_home" -Dexe4j.moduleName="$prg_dir/$prg" "-Djava.awt.headless=t rue" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" com.install4j.runtime.Launcher start com.thinkingstone.juggler.Main false false "$prg_dir/var/logs/ stderr.log" "$prg_dir/var/logs/stdout.log" true true false "" true true 0 0 "" 20 20 "Arial" "0,0,0" 8 500 "version 1.0.5" 20 40 "Arial" "0,0,0" 8 500 -1 --co nf $prg_dir//etc/console.conf --default $prg_dir//etc/console.conf.default start "$@" &

Eliminé el comando nohup, quedando la linea de la siguiente manera:
"$app_java_home/bin/java" -server -Dinstall4j.jvmDir="$app_java_home" -Dinstall4j.appDir="$app_home" -Dexe4j.moduleName="$prg_dir/$prg" "-Djava.awt.headless=t rue" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" com.install4j.runtime.Launcher start com.thinkingstone.juggler.Main false false "$prg_dir/var/logs/ stderr.log" "$prg_dir/var/logs/stdout.log" true true false "" true true 0 0 "" 20 20 "Arial" "0,0,0" 8 500 "version 1.0.5" 20 40 "Arial" "0,0,0" 8 500 -1 --co nf $prg_dir//etc/console.conf --default $prg_dir//etc/console.conf.default start "$@" &

Luengo para poner el script como daemon hice lo siguiente:
Suponiendo que tenemos la consola instalada en /opt/modsecurity-console, debemos hacer un enlace simbólico al /etc/init.d/:
ln -s /opt/modsecurity-console/modsecurity-console /etc/init.d/modsecurity-console
Y para finalizar lo agregamos en los runlevels:
update-rc.d modsecurity-console defaults



Listo eso es todo, como siempre espero que les sea útil, saludos.

Wednesday, September 02, 2009

Configuration Auditing php.ini To Help Prevent Web Application Attacks

Paseando un poco por la web, encontré en el blog de la gente de Tenable Network Security By Paul Asadoorian este artículo MUY UTIL que ayuda a disminuir los riesgos en un ataque a una aplicación web que use php como engine / lenguaje de programación.

Saludos y espero como siempre que les sea útil a alguien.

Saturday, November 29, 2008

Uso de estándares

Hoy vamos a hablar de estándares y su utilización en nuestras tareas habituales.
Primero definamos qué entendemos por estándar:
- Según wikipedia por ej. un estándar es una especificación que regula la realización de ciertos procesos o la fabricación de componentes para garantizar la interoperabilidad.
- Según la ISO (International Organization for Standarization) la Normalización es la actividad que tiene por objeto establecer, ante problemas reales o potenciales, disposiciones destinadas a usos comunes y repetidos, con el fin de obtener un nivel de ordenamiento óptimo en un contexto dado, que puede ser tecnológico, político o económico.
La normalización persigue fundamentalmente tres objetivos:
* Simplificación: Se trata de reducir los modelos quedándose únicamente con los más necesarios.
* Unificación: Para permitir la intercambiabilidad / interoperabilidad a nivel internacional.
* Especificación: Se persigue evitar errores de identificación creando un lenguaje claro y preciso

Teniendo en cuenta además que un estándar se convierte en tal, luego de que su utilización se hace masiva, podemos entonces pensar que en nuestras labores cotidianas y sobre todo en el ambiente de las Tecnologías de Información existen infinitas tareas que pueden estandarizarse. Veamos un ejemplo:
Cuántos de nosotros hemos instalado en más de una oportunidad un sistema operativo, algún servidor de correo, o realizado la migración de servicios?
Independientemente de que la implementación haya sido exitosa, he aquí la gran pregunta: SIEMPRE SEGUIMOS LOS MISMOS PASOS?
Realizar por ejemplo una planificación, preever supuestos, tener planes alternativos, controlar que la ejecución de pasos se realice de acuerdo a lo planificado, documentar los procesos y posteriormente a su ejecución analizar posibles mejoras de los mismos. Si señores esas son actividades que nos van a permitir estandarizar logrando como dice doña ISO: Simplificación, Unificación y Especificación.
Y que logramos con esto? En el caso de la instalación del SO por ej:
- Posibilidad de delegar tareas operativas asegurándonos de que se realicen de forma adecuada.
- Mayor grado de control.
- Independencia de las personas y de las ganas que éstas tengan de realizar sus labores.
- Mayor rapidez y exactitud en los procesos de toma de decisiones.
- Mayor capacidad de respuesta a incidentes: uptime de servicios alto, reducción del tiempo entre fallas.
- Mayor estabilidad y niveles de seguridad.
- Y como si fuera poco menor carga de trabajo para los administradores o responsables que por lo general suelen dedicar mucho tiempo a tareas no relacionadas con su cargo debido a la falta de estándares.
Para finalizar, aclaremos que no se trata de utilizar o generar estándares por capricho. Si bien está comprobado que la utilización de estándares beneficia por lo general a las organizaciones que los implementan. Por más ISO, BS, IRAM, etc que fuese, nunca debemos perder de vista la realidad de la organización y adecuar los mismos ésta. Debemos tratar de mejorar continuamente de eso se trata.

Algunos estándares tecnológicos muy utilizados:
ITIL, COBIT, ISO 27k, SOX, entre otros.

Monday, November 10, 2008

Hay que blogear, eso dicen

Perdón por haberte dejado mi querido amigo blog. No tengo excusas así que a contar en qué andamos:

Hace casi dos años estoy abocado a tareas relacionadas con la Seguridad de la Información un término que voy a repetir hasta el cansancio de acá en más y que no se confunda con un el subconjunto o subsistema denominado Seguridad Informática. Lejos está ya el tiempo en el que la seguridad pasaba por la tecnología únicamente (Firewalls, Antivirus, IDSs, IPSs, entre otros), hoy debemos pensar no solo en ello sino también en Procesos (Documentación, Cumplimientos normativos, Buenas Prácticas, Estándares) y Personas (Conciencia de Seguridad y riesgos inherentes propios yo diría de la era de la información).

Pero pensemos en un pequeño ejemplo, para aclarar de qué estamos hablando:
En una empresa X se decide dar cierto grado de seguridad a la información considerada crítica o sensible y para ello deciden contratarnos como profesionales de seguridad.
Surgen muchas preguntas pero listemos algunas:
Cómo saber cuándo estamos en presencia de información crítica o sensible?. Esto nos hace pensar que necesitamos alguna metodología para clasificarla.
Dónde se encuentra dicha información? De aquí surge, que sería conveniente contar con algún mecanismo de registro, un inventario tal vez que nos permita saber dónde está esa información, qué sistemas la procesan, en qué medios se almacenan y demás.
Quién maneja / administra / transporta o hace algún uso de esa información? Debemos también identificar a los propietarios de esa información para poder posteriormente definir un control de acceso acorde a sus necesidades.
A qué tipo de amenazas está sometida dicha información? Si es información digital por ej. se realizar copias de resguardo (backups)? Si fuese información impresa por ej. está almacenada en un área o lugar seguro?
El estudio detallado de los riesgos a los cuales está expuesta la información de una organización se conoce como Análisis de Riesgo, el cual puede realizarse de manera cuantitativa y/o cualitativa y sirve como herramienta de gestión para obtener el nivel de seguridad global existente, justificar inversiones, aplicar controles de seguridad acorde y facilitar el arduo trabajo de quienes estamos relacionados con la Seguridad de la Información, entre otras utilidades.
Podemos continuar con esta lista de preguntas, pero me interesa que noten que nunca hablamos de ningún tipo de tecnología. Es que así debe ser, primero debemos VALORAR la información para posteriormente decidir si vamos a asumir el riesgo, trasladarlo o implementar Tecnología, mejorar los Procesos o capacitar a las Personas o las tres cosas.
Espero como siempre haber sido claro y que este post les resulte práctico. Para quien quiera comenzar a transitar el camino de la Seguridad de la Información les aconsejo visitar los siguientes sitios:
http://secugest.blogspot.com/
http://www.iso27000.es/
http://seguridad-de-la-informacion.blogspot.com/
http://blog.infosecman.com/
http://www.segu-info.com.ar/
Además de temas como:
SGSI (ISMS), Gestión de Riesgos, ISO familia 27000, MAGERIT, entre otros.

Thursday, July 24, 2008

PHP Easter Eggs

Seguramente la mayoría que ha trabajado alguna vez con php conoce de la existencia de unos famosos huevos de pascua que se pueden visualizar agregando cierto valor al final de un archivo .php similar a esto:
http://php.net/?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000
Los hay de todo tipo, pueden ver algunos otros aquí

Pero, para ir directo al grano, la pregunta es la siguiente:

Creen uds, que dichos huevos pueden representar una amenaza en particular para quienes permitan visualizar estos eggs?

Descartemos el hecho de que se pueda obtener la versión de php, ya que existen métodos mucho más fáciles y efectivos para eso, como los de inspeccionar los Response Headers de dichas páginas, donde no solo podríamos obtener la versión del php, sino también la del web server.

Nota: Si alguien no quiere permitir su visualización, solo ponga la variable expose_php=off en su archivo de configuración php.ini.

Saludos y como siempre espero poder contribuir con alguien al menos.