Turma boa tarde,
Queria saber quais são os meios de verificar o código fonte de uma packages. Alguém pode me ajudar?
Como verificar o código fonte de uma package?
- heraldoaraujo
- Rank: Programador Pleno
- Mensagens: 41
- Registrado em: Dom, 19 Fev 2012 12:10 pm
-
- Rank: DBA Sênior
- Mensagens: 319
- Registrado em: Seg, 16 Nov 2009 4:50 pm
- Localização: São Paulo - SP
Caro Heraldo,
Costumo utilizar o seguinte código, veja se lhe ajuda:
Att.,
Costumo utilizar o seguinte código, veja se lhe ajuda:
SELECT *
FROM DBA_OBJECTS UO
WHERE UO.OWNER = 'SYSTUR'
AND UO.OBJECT_TYPE IN ('PACKAGE','PACKAGE BODY','PROCEDURE')
AND ( TRIM(UPPER(UO.OBJECT_NAME)) LIKE TRIM(UPPER('%sitef%'))
or TRIM(UPPER(UO.OBJECT_NAME)) LIKE TRIM(UPPER('%cart%cr%dito%')) )
AND UO.status = 'VALID' ;
-- AND ( TRIM(UPPER(UO.OBJECT_NAME)) LIKE TRIM(UPPER('%CLIE%')) );
-- OR TRIM(UPPER(UO.OBJECT_NAME)) LIKE TRIM(UPPER('%GEN%'))
-- OR TRIM(UPPER(UO.OBJECT_NAME)) LIKE TRIM(UPPER('%PES%')) ),
--
-- SELECT * FROM ALL_OBJECTS WHERE
SELECT DISTINCT NAME
FROM ALL_SOURCE
WHERE OWNER = 'SYSTUR'
AND TYPE IN ('PACKAGE','PACKAGE BODY')--,'PROCEDURE','FUNCTION')
AND ( TRIM(UPPER(TEXT)) LIKE TRIM(UPPER('%sitef%'))
or TRIM(UPPER(TEXT)) LIKE TRIM(UPPER('%cart%cr%dito%'))
/*or TRIM(UPPER(TEXT)) LIKE TRIM(UPPER('%OURO%'))*/ );
- heraldoaraujo
- Rank: Programador Pleno
- Mensagens: 41
- Registrado em: Dom, 19 Fev 2012 12:10 pm
Muito obrigado vou testar hoje a noite, mas funciona mesmo com uma packages criptografada, é possível?
-
- Rank: DBA Sênior
- Mensagens: 319
- Registrado em: Seg, 16 Nov 2009 4:50 pm
- Localização: São Paulo - SP
Não conheço muito de criptografia no Oracle pois nunca tive a necessidade de criar, pois nas maiorias dos lugares que eu já trabalhei esta rotina já estava desenvolvida.
No entanto sei que existem packages específicas para esta finalidades, como você pode ver no seguinte link:
http://glufke.net/oracle/viewtopic.php?t=200
Att.,
No entanto sei que existem packages específicas para esta finalidades, como você pode ver no seguinte link:
http://glufke.net/oracle/viewtopic.php?t=200
Att.,
-
- Rank: DBA Sênior
- Mensagens: 319
- Registrado em: Seg, 16 Nov 2009 4:50 pm
- Localização: São Paulo - SP
Como me interessei pelo assunto, sugiro os seguintes links, caso queira tirar suas dúvidas sobre criptografia. Basta ver o método usado para criptografar e fazer o inverso, segue:
TDE
http://www.profissionaisti.com.br/2011/ ... com-o-tde/
Wrapper
http://www.linhadecodigo.com.br/artigo/ ... apper.aspx
http://www.devmedia.com.br/pl-sql-wrapper/4636
DBMS_CRYPTO
http://docs.oracle.com/cd/B28359_01/app ... crypto.htm
http://psoug.org/reference/dbms_crypto.html
OBFUSCATION TOOKIT/MD5
http://www.siltechconsult.com.br/silverblog/?p=29
http://www.oraclehome.com.br/2011/08/30 ... no-oracle/
Além disso, existe mais tópicos aqui no próprio site.
Abçs.,
TDE
http://www.profissionaisti.com.br/2011/ ... com-o-tde/
Wrapper
http://www.linhadecodigo.com.br/artigo/ ... apper.aspx
http://www.devmedia.com.br/pl-sql-wrapper/4636
DBMS_CRYPTO
http://docs.oracle.com/cd/B28359_01/app ... crypto.htm
http://psoug.org/reference/dbms_crypto.html
OBFUSCATION TOOKIT/MD5
http://www.siltechconsult.com.br/silverblog/?p=29
http://www.oraclehome.com.br/2011/08/30 ... no-oracle/
Além disso, existe mais tópicos aqui no próprio site.
Abçs.,
- stcoutinho
- Moderador
- Mensagens: 850
- Registrado em: Qua, 11 Mai 2011 5:15 pm
- Localização: são Paulo - SP
Fala Tinho!
MUITO legal as dicas que postou, mas receio que não seja possível descriptografar um package, function ou procedure que se encontre criptografada.
O objetivo da criptografia de códigos PL/SQL é o de justamente esconder a lógica do negócio de consultas como a que o HeraldoAraujo está desejando fazer.
Por exemplo, o ORACLE EBS (um ERP da ORACLE) está cheia de packages criptografadas que impedem os concorrentes de conhecerem as regras de negócio da aplicação.
A ORACLE recomenda sempre que os desenvolvedores, caso pensem em criptografar os fontes, que mantenham uma cópia descriptografada dos mesmos.
Abraços,
Sergio Coutinho
MUITO legal as dicas que postou, mas receio que não seja possível descriptografar um package, function ou procedure que se encontre criptografada.
O objetivo da criptografia de códigos PL/SQL é o de justamente esconder a lógica do negócio de consultas como a que o HeraldoAraujo está desejando fazer.
Por exemplo, o ORACLE EBS (um ERP da ORACLE) está cheia de packages criptografadas que impedem os concorrentes de conhecerem as regras de negócio da aplicação.
A ORACLE recomenda sempre que os desenvolvedores, caso pensem em criptografar os fontes, que mantenham uma cópia descriptografada dos mesmos.
Abraços,
Sergio Coutinho
- heraldoaraujo
- Rank: Programador Pleno
- Mensagens: 41
- Registrado em: Dom, 19 Fev 2012 12:10 pm
Bom dia turma,
Eu já previa que não era possível, como o colega de cima falou. Queria ter mesmo CERTEZA sobre esse assunto.
Muito obrigado a todos.
Eu já previa que não era possível, como o colega de cima falou. Queria ter mesmo CERTEZA sobre esse assunto.
Muito obrigado a todos.
- fbifabio
- Moderador
- Mensagens: 199
- Registrado em: Ter, 22 Fev 2011 1:51 pm
- Localização: São Paulo - SP
- Contato:
Fábio Prado
www.fabioprado.net
www.fabioprado.net
Pessoal,
Para surpresa de todos, infelizmente é possível recuperar o código wrapped de um objeto pl/sql:
http://www.blackhat.com/presentations/b ... nnigan.pdf
[]s
Para surpresa de todos, infelizmente é possível recuperar o código wrapped de um objeto pl/sql:
http://www.blackhat.com/presentations/b ... nnigan.pdf
[]s
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 8 visitantes