Parece que TOAD, de Quest, es una herramienta demasiado atractiva para algunos. Incluso ofreciendo alternativas gratuítas al respecto.
Tras comprobar que seguían utilizando TOAD, incluso contra las bases de datos de producción, decidimos implementar el siguiente trigger after logon:
create or replace trigger logon_program after logon on database
declare r_session v$session%rowtype;
begin
— Tomamos info de la sesion que se conecta
select * into r_session
from v$session
where audsid=userenv(‘SESSIONID’);
if ((upper(r_session.program) like ‘%T%O%A%D%’)
or (upper(r_session.program) like ‘%TOAD%’))
then
raise_application_error(-20002,’Hacking detected. Application not supported.’);
end if;
end;
/
No obstante, hay gente que se sigue resignando a usar sustitutivos a TOAD, y recurren a estratégias tan imaginativas como renombrar el ejecutable TOAD.EXE por SQLPLUSW.EXE
Vamos, casi ni se nota!
SQL> select sid, serial#, program, module, osuser from v$session;
SID SERIAL# PROGRAM MODULE OSUSER
———- ———- —————————— ——————————————— ————–
1 1 ORACLE.EXE SYSTEM
2 1 ORACLE.EXE SYSTEM
3 1 ORACLE.EXE SYSTEM
4 1 ORACLE.EXE SYSTEM
5 1 ORACLE.EXE SYSTEM
6 1 ORACLE.EXE SYSTEM
7 1 ORACLE.EXE SYSTEM
8 1 ORACLE.EXE SYSTEM
10 1293 jrew.exe jrew.exe bbdd
11 333 sqlplus.exe sqlplus.exe bbdd
* 13 583 sqlplusw.exe T.O.A.D. slaborda
14 2 JDBC Thin Client OWB Runtime Service – Infrastructure SYSTEM
* 17 1091 sqlplusw.exe T.O.A.D. slaborda
18 1006 OraEdit.exe OraEdit.exe bbdd
19 385 QueryReporter.exe PL/SQL Developer bbdd
* 22 819 sqlplusw.exe T.O.A.D. slaborda
23 30 PLSQLDev.exe PL/SQL Developer bbdd
37 75 jrew.exe jrew.exe fdomingues
* 44 21 FCBARCELONA5-REALMADRID0.exe T.O.A.D. slaborda
53 196 JDBC Thin Client JDBC Thin Client fdomingues
61 413 JDBC Thin Client JDBC Thin Client fdomingues
* 62 50 FCBARCELONA5-REALMADRID0.exe T.O.A.D. slaborda
22 filas seleccionadas.
Impresionante…
Ya te vale….
Ya te vale al cuadrado…
Bueno, notas de humor a parte yo quería darte las gracias por lo mucho que me ayudan tus pots. Te leo casi desde el principio y aunque estoy pensando en crear un blog del estilo del tuyo aún no me atrevo. Creo que hace falta saber mucho para hacer algo como esto.
Te felicito, porque sé que además de mí también ayudas a mucha más gente (todo el mundo de mi departamento está enganchado a tu blog).
Gracias Javier, sigue enseñándonos como hasta ahora.
PD.: me gustaría hacerte una consulta personal-profesional, pero mejor por mail ¿no?
¡Gracias por tu comentario!.
Varias cosas:
– Ánimo con el blog!, seguro que hay nuevas opiniones o artículos interesantes para dar a conocer. Házmelo saber si te animas…
– La consulta personal-profesional, si es breve, bien puede ser un comentario, y si es más personal que profesional (o más extensa), mejor por mail a esta dirección.
Gracias!, de corazón! 🙂
y… Luixy Toledo y Paquirrín…
…o debería llamaros
…SLABORDA!!!!. 🙂
Gracias también por no editar el hexadecimal del TOAD, o cambiar el module con el paquete DBMS_APPLICATION_INFO!! :)))
oing oing No seas Frikki…
Tus post son impresionantes.
Si eres un friki, de mayor quiero ser como tu 😉
JAVIER,
acabo de ver tu blog y lo encuentro muy bueno, se agradece el compartir tus conocimientos…
Te queria hacer la siguiente consulta:
necesito saber el programa desde donde se efectuo una accion sobre una tabla, tal como el ejemplo del toad. , pero mi problema es que no tengo acceso a las tablas de sistema, porque soy desarrollador…
se puede hacer esto de otra forma ???
Hola Javier,
He ejecutado el Script como usuario SYS en la BD pero parece que no le hace caso, porque puedo seguir ingresando con el TOAD, sabes que puede estar pasando?
Gracias!