Skip navigation

El Pato DBA

3 posts

Nunca se me había ocurrido presentar algo en español en este sitio, creo que lo haré con más frecuencia ya que tengo la ventaja de hablar dos idiomas. Les dejo este artículo que deje en mi perfil de Linkedin y espero lo compartan.

Hace unas semanas atras me tropezé con un video de un programador, Connor McDonald, donde explica la vulnerabilidad existente solucionable con este paquete. Parece ser que es de vieja data este "problema" pero que esta bajo control aparentemente, este paquete es solo controlado por APEX Oracle y hace parte de su funcionamiento interno, dbms_sys_sql el paquete que hace que un usuario cualquier tenga privilegios de DBA. Este paquete es usado para ejecutar SQL scripts con cualquier usuario que tenga el privilegio. No existe mucha información acerca de este paquete, no es muy documentado pero debe estar atentos.

Les dejo acá un ejemplo de lo que NO deberia hacerse, esta base de datos es Oracle 12c y algún programador bien informado me quería meter un gol. Por supuesto esto ya fué corregido e informado de inmediato para que me dierán muchas explicaciones al respecto.

dbms_sys_sql.JPG

Esta vulnerabilidad puede explotarse através del protocol Oracle Net, para que el atacante pueda tener éxito el privilegio para DBMS_SYS_SQL debe estar concedido, es acá donde les digo que por favor revisen el código de los programadores antes de ejecutarlos en un ambiente de producción.

Les explico con más detalle como funciona:

declare uid number;

sqltext varchar2(100) := 'alter user system identified by hacker';

myint integer; 

begin select user_id into uid from all_users where username like 'SYSTEM'; 

myint:=sys.dbms_sys_sql.open_cursor();

sys.dbms_sys_sql.parse_as_user(myint,sqltext,dbms_sql.native,UID); 

sys.dbms_sys_sql.close_cursor(myint);

end ;

Como puede observar en el PL/SQL anterior un usuario normal pero privilegio y mucha información acerca del paquete puede cambiar el password de SYSTEM de nuestra base de datos sin que lo notemos.

Recomendación No 1, jamás concendan el permiso a DBMS_SYS_SQL al público o public en Inglés. Solo el DBA o SYS deben manejar este privilegio y si usan APEX es de manejo interno de Oracle.

Si su empresa maneja alguna de estas versiones de base de datos, puede que este más expuesto a esta vulnerabilidad.

Vulnerable Systems:

* Oracle11g Standard Edition 11.1 .7

* Oracle11g Standard Edition 11.2.0.1.0

* Oracle11g Standard Edition 11.2.0.1 R2

Cualquier información extra que deseen agregar solo hagámenlo saber en la caja de comentarios, promete responder todos los comentarios.

Jairo Suarez Carrillo

El Pato DBA

Introducción

Hola mi nombre es Jairo Suarez, gracias a la ocurrencia de mis amigos de Colegio nacio este extraño nombre, soy Ingeniero de Sistemas de la universidad de Santander (Colombia), tengo 37 años y desde hace 10 años estoy trabajando con Oracle especialmente en base de datos. Mi primer curso de formación en Oracle Database fue en la Universidad Autónoma de Bucaramanga, Colombia; en el 2005 desde ahí quedé conectado con Oracle. Luego llegó la certificacion OCP (Oracle Certified Professional) y apartir de ahí llegaron las oportunidades, debo confesar que he sido un DBA silencioso, pero ya siento que es la oportunidad de compartir con el mundo y sobre todo formar a los nuevos dba's acerca de este magnífico mundo.

 

Mi trabajo ahora esta enfocado en especializarme en otras formas de distribución de datos que surgen con las nuevas tecnologías como lo es blockchain y otros motores.

 

Durante mis primeros 5 años podria decir que trabajé en las empresas más grandes de telecomunicaciones de Colombia donde gracias a mis mentores de la época, si ellos leen esto, espero lo hagan saber, Noel y Jaime Rozo, donde me enseñarón las reales bases para tener bases de datos gigantes corriendo como un Formula 1. Tiempo después ya fuí madurando más y más en compañias como IBM, DIRECTV donde los retos allá fueron inmensos y la experiencia realmente relevante.

 

Ahora vivo en Nueva Zelanda donde hay muchas oportunidades para progresar y siento que salir del anonimato podría darme una buena oportunidad para ser un buen consultor Oracle en Nueva Zelanda y expandir; porque no, las fronteras del conocimiento aprovechando generar algun tipo de conexion para proyectos nuevos y/o en formación.

 

Para las personas que desean tener mas información acerca de mi por favor no duden en preguntarme o seguirme en Linkedin

 

PD: No tengo Facebook, es perjudicial para mi salud (mental)

 

Saludos Cordiales

 

Jairo Suarez Carrillo

Jairo Suarez

Types of DBA's

Posted by Jairo Suarez Jul 23, 2018

This material is adapted from Craig S. Mullins' Database Administration: The Complete Guide to Practices and Procedures, Addison Wesley Professional; ISBN: 0201741296.

There are DBAs who focus on logical design and DBAs who focus on physical design; DBAs who specialize in building systems and DBAs who specialize in maintaining and tuning systems; specialty DBAs and general-purpose DBAs. Truly, the job of DBA encompasses many roles. Some organizations choose to split DBA responsibilities into separate jobs. Of course, this occurs most frequently in larger organizations, because smaller organizations often cannot afford the luxury of having multiple, specialty DBAs.

Still, other companies simply hire DBAs to perform all of the tasks required to design, create, document, tune and maintain the organization’s data, databases, and database management systems. Let’s look at some of the more common types of DBA.

For reading the full article please follow this link

Jairo Suarez Carrillo