Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
SeguranaembancosdedadosOracle11g
Buscar
comentrios
postfavorito(6)
SQLMagazine116ndice
Segurana em bancos de
dados Oracle 11g
O artigo descreve conceitos fundamentais sobre o tema
segurana de dados. Atravs de contextualizaes e
exemplos simples, so destacadas melhores prticas com
relao configurao de opes de segurana durante a
criao do banco de dados Oracle.
33
Gostei(2)
Curtir
100
(0)
ArtigodotipoTerico
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
1/22
08/04/2015
SeguranaembancosdedadosOracle11g
Recursosespeciaisnesteartigo:
Contedosobreboasprticas.
Porqueesteartigotil
Aseguranadeumbancodedadosconsisteemumasriedefacilidadesque
evitarooacessoeusoindevidodasinformaesmantidaspeloSGBD.
Aaplicaodeconceitosdeseguranarecomendadaparaempresasdetodosos
segmentos,mas,emespecial,instituiesfinanceiras.Damesmaforma,em
situaesemquenecessrioprotegerosdadosdeusuriosnoautorizadosou
malintencionados,importanteaadoodeumaestratgicadesegurana.Para
ilustrarcomoestesconceitospodemseraplicados,oartigodescreveconceitos
fundamentaissobreotemaseguranadedados.Atravsdecontextualizaese
exemplossimples,sodestacadasmelhoresprticascomrelaoconfigurao
deopesdeseguranaduranteacriaodobancodedadosOracle.
Paraqueprotegerdados?Pareceumaperguntaboba,masprecisosaberda
respostaparaqueesteartigosirvaparavoc.Oqueestarmazenadonobancode
dadosrealmenteimportante,valioso,poissenofossenoestarial.Dados
sobreclientes(cartesdecrdito,documentos,etc.),empregados,produtos,etc.
soarmazenadosnobancodedados.partindodesteprincpioqueosSGBDs
(SistemasGerenciadoresdeBancosdeDados)oferecemgeralmentemuitos
recursosdeseguranaparaseremutilizados.
Paratornarobancodedadosseguronecessrioalguminvestimentoesaberse
valeapenainvestirsimples.Provavelmenteocustodoinvestimentosermuito
maisbaixodoqueocustoenvolvidocomaviolaoe/ouperdadosdadose
problemaslegais(multas,processos,etc.).Eventualmente,ataquesacontecema
grandesserviosnaredeemuitosdadossocomprometidos.Temoscomo
exemploaPlaystationNetwork,queficouindisponvelpormaisdetrintadias
devidoaumataque,sitesdoGovernoinvadidosealterados,aredede
supermercadosHannaford&Sweetbay,quevazou1,8milnmerosdecartesde
crdito,etc.
UmestudopublicadopeloVerizonBusinessRISKTeammostracomoaviolaode
dadosocorre,ondeelasocorremmais,quaismtodosusados,almdeoutras
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
2/22
08/04/2015
SeguranaembancosdedadosOracle11g
informaesegrficos.Orelatrioindica,porexemplo,queamaioriadasviolaes
seconcretizouapartirdeumacombinaodeeventosemvezdeumnicoevento.
Emquasetodososcasosalgumtipodeerrocontribuiuparaaviolaoemenosde
25%exploraramvulnerabilidades.Issomostracomoimportantesaberusaros
recursosdesegurana.Dosincidentesrelacionadosavulnerabilidades,90%tinham
correesdisponveishseismesesoumaisdoataque.
Oestudotambmmostraquenovededezviolaesenvolvemalgodesconhecido
paraoproprietrio,ouseja,quecomumnosaberounoconhecerqueexistem
dadossensveisequedeveriamestarprotegidosnabasededados.Comoproteger
aquiloquevocnosabeounov?Doisoutrosfatosapresentadosnoestudo
informamqueamaioriadasviolaespermanecedespercebidaporumlongo
tempoesodescobertasgeralmenteporumaempresaterceirizada.Almdisso,
mostraqueamaioriadosataquesdebaixaamdiadificuldade,ouseja,o
invasornoprecisatrabalharmuitoparatersucesso.Oestudofoipublicadopelo
VerizonBusinessRISKTeamepodeserobtidopelolinknaseodeLinks.
Conceitos
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
3/22
08/04/2015
SeguranaembancosdedadosOracle11g
Tornarumbancodedadosmaisseguronoumatarefatrivial.OOraclepossui
muitosrecursosevantagens,poispossvelseconectaraobancodedados
usandoumavastalistadebibliotecasderedeemtodosdeautenticao,existem
milharesdepackageseprocedures,existeumamquinavirtualJavaeumservidor
HTTP,vocpodechamarrecursosexternosaobancodedadosusandoexternal
proceduresouvriosoutrospacotesutilitrios,etc.Todosestesexemplosde
funcionalidadessotimosdopontodevistadeprodutividadeecriaode
aplicaes,poispermitemquemaisrecursossejamutilizados,masdopontode
vistadesegurana,quantomaisopeserecursososervidortiver,maisdifcilser
paraprotegloemonitorloadequadamente.Paraqueconsigamosterum
direcionamentosobrecomocomearaavaliaroambientedebancodedadospara
deixlomaisseguro,recomendvelfazeroseguinte:
Descoberta:Nopodemosprotegeraquiloquenoconhecemos.preciso
mapearosativos,quesoinstnciasdebancodedadosedadossensveis,como
nmerosdecartesdecrditoporexemplo.Almdisso,precisoautomatizaresta
tarefaporqueasinformaeslevantadasnestemapeamentoserodiferentesaps
seisoudozemeses
VerificaodeConfigurao:precisoavaliaraconfiguraodoseubancode
dadosparagarantirquenoexistambrechasdesegurananele.Essaavaliao
norelacionadaapenasaobancodedados,mastambmaosistemaoperacional
Harderning:oprocessodemapeamentodasameaas,mitigaodosriscose
execuodasatividadescorretivas.Oquefoilevantadoanteriormentegerouvrias
recomendaes.Implementlasoprimeiropasso
AuditoriadeMudanas:Apsoprocessodehardening,precisoverificar
continuamenteseaconfiguraodeseguranafoimodificada.Podemosusar
ferramentasqueverificamperiodicamentetaisconfiguraeserealizam
comparaesparadescobrirsealgumaalteraofoiefetuada
MonitoramentodaAtividadedoBancodeDados:apropriadotambm
monitorarmodificaesnasconfiguraesdeseguranadobancodedadosfeitas
atravsdeSQL.Omonitoramentopermitequeinvases,abusos,fraudese
problemasemgeralsejamdescobertosemtemporeal
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
4/22
08/04/2015
SeguranaembancosdedadosOracle11g
Auditoria:Trilhasdeauditoria,ouaudittrails,quesodadosgeradospela
auditoriaemformadearquivosouemtabelas,devemsergeradasemantidaspara
registraraesquepossamimpactarnasegurana,integridadeounoacessoa
dadossensveis
Autenticao,controledeacessoegerenciamentodedireitos:Nemtodos
osdadosenemtodososusuriosdevemsercriadosdeformaigualitria.
necessrioautenticarosusurios,garantiraplenaresponsabilidadeporusurioe
gerenciarprivilgiosparalimitaroacessoaosdados.Devemosaplicaresses
privilgiosmesmoparaousuriodobancodedadosmaisprivilegiado.Almdisso,
precisamosanalisarosrelatriosdeusodeprivilgiosperiodicamentecomoparte
deumprocessodeauditoria
Criptografia:Useacriptografiaparatornardadossensveisilegveis.Useapara
queumatacantenoobtenhaacessonoautorizadodeforadobancodedados.
Issoincluitantoacriptografiadedadosemtrnsito,paraqueoatacantenopossa
ouvirnacamadaderede,quantodedadosemrepouso,paraqueoatacanteno
possaextrairosdadosdamdia.
Estassoasreasbaseparatornarumbancodedadosseguro,mas
recomendvelnocriarnovoschecklists.ProcureobterferramentasouDatabase
STIG(vejaoBOX1)paravalidarsuaconfiguraoefacilitaroprocesso.Casofalte
algumitemdeseguranaqueconsidereimportantenomodeloobtidovia
ferramentaouguia,vocapenasoadiciona.
BOX1.STIG
STIG(SecurityTechnicalImplementationGuides)umametodologia
padronizadaparaumainstalaoseguraemanutenodesoftwaree
hardware.OtermofoicriadopelaDISA(DefenseInformationSystemsAgency)
quecriadocumentosdeconfiguraoemapoioaoDepartamentodeDefesa
dosEstadosUnidos(DepartmentofDefenseDoD).Asdiretrizesde
implementaoincluemprocessosadministrativosrecomendadoseabrangeo
ciclodevidadosdispositivos.
comumvermosinstalaesdebancodedadossemomnimodeseguranae
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
5/22
08/04/2015
SeguranaembancosdedadosOracle11g
demonstraremosalgumasboasprticasquepodemevitarmuitosproblemas.Voc
deveplanejarbemaimplementaoderecursosparabalancearsegurana,
desempenhoeusabilidade.
OcontedodesteartigovoltadoparaDBAscomumconhecimentobsicono
bancodedadosOracleverso11g,bonsconhecimentosgeraiseminformticae
redes.
ApesardeoartigoservoltadoparaambientesOracleDatabase11g,amaioriadas
informaesaquidescritassoaplicveisemversesmaisantigas.Obviamentea
segurananoestsnobancodedados,mastambmnaaplicao,nosistema
operacionalenarede,epararesolverisso,outrosespecialistasentraronotime.
Correeseatualizaes
AcadatrsmesesaOraclelanaumCPU(CriticalPatchUpdate)paracorrigir
problemasdesegurananobancodedadosOracleetambmumPSU(PatchSet
Updates),queumaatualizaomaiscompleta,geralmenteincluindoumaCPU
previamentelanada.
Paraobtertaisatualizaesnecessriorealizaraaquisiodeumsuportecoma
Oracleparaaslicenasqueestosendoouqueforamadquiridasanteriormente
(nestecasopagaseoretroativo).Ovalornoaltoepagoanualmente.Coma
aquisiodosuportevocrecebeumCSI(CustomerSupportIdentifier)que
permiteacessoaositesupport.oracle.com.Estecontmpatches/atualizaes,
aberturadechamadascomofabricanteparatratardeproblemasnosoftware
adquirido,vastabasedeconhecimentoparaquevocmesmopossaresolverseu
problema,tutoriais,etc.Almdisso,aindasopermitidasatualizaesdeverses.
Realizeasmodificaesdesejadasemseuambienteantesqueosistemaentreem
produoevitandoassimfuturasmanutenes,downtimes,imprevistos,etc.
Separaoderesponsabilidades
AmbientesOraclequepossuemvriaspessoasadministrandodevemterseparao
decontaseseparaoderesponsabilidades.Utilizeosrecursosdecriaode
gruposparaconfiguraodeprivilgiosnomomentodainstalaodosoftwarede
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
6/22
08/04/2015
SeguranaembancosdedadosOracle11g
bancodedados.DuranteainstalaoemumsistemaoperacionalUNIX,osoftware
perguntarquaisosgruposnosistemaoperacionalseroconfiguradoscomo
DatabaseAdministratorGroupOSDBAeDatabaseOperatorGroupOSOPER.Se
preferiraseparaoderesponsabilidades,configurerespectivamenteosgrupos
dbaeopercriadospreviamentenosistemaoperacional.
ParaqueminstalaosoftwareGI(GridInfrastructure)comobaseparauma
instalaoOracle,hmaisgruposnosistemaoperacionalrelacionados.Paraum
ambienteondeconfiguradoorecursodegerenciamentodearmazenamentoASM
(AutomaticStorageManagement)temoscomogrupoOSDBAoasmadmin,que
umgrupoobrigatrio,ecomogrupoOSOPERoasmoper.Almdisso,
interessante,masnoobrigatrio,criarumusurionosistemaoperacionalpara
cadainstalaodesoftware,ouseja,umparaainstalaodoGIeoutroparaa
instalaodobancodedadosOracle,facilitandoatadeclaraodevariveisde
ambientenoperfildecadausurio.Osusuriospoderiamserrespectivamentegrid
eoracle,porexemplo.
Apsdefinidatodaessalistadegruposdeusurios,estnahoradecriaros
usuriosqueadministrarooservidoreassocilosaosgruposdeacordocomas
responsabilidades.
Aumentandoaseguranadeumbancode
dadosOracle
DuranteacriaodeumbancodedadosOraclevriasaespodemsertomadas
antecipadamenteparaevitaralgumareconfiguraoposterior.Oquenofor
possvelrealizarduranteacriaodeverserfeitoposteriormentecomooaumento
naseguranadecontas,conexeseparmetrosdeinstnciadobancodedados.
DBCAeTemplates
ODBCA(DatabaseConfigurationAssistant)facilitaemuitoavidadoDBAquando
secriaumbancodedados,pormnecessrioestaratentoaoaumentono
nmerodevulnerabilidadesapscrilo.Omaisimportantecomrelaoaos
recursosqueseroinstaladosseoptarpelosmodelos(Templates)General
Purpose,DataWarehouseouTransactionProcessing(10g).ComomodeloCustom
Databasepossveloptarpelosrecursosqueseroinstalados,diminuindoassima
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
7/22
08/04/2015
SeguranaembancosdedadosOracle11g
necessidadededesabilitlosapsacriao.Aquiinteressantereforara
recomendaodeinstalarapenasosrecursosnecessrios.Sealgummodelo
diferentedeCustomDatabaseforescolhido,vriosrecursosdesnecessriospodem
serinstalados,deixandoobancodedadosmenosseguroedifcildemelhorara
configuraodeseguranaposteriormente.SeoptarpeloCustomDatabase,os
recursosestarodisponveisparaseremescolhidos,entoescolhaapenasosque
vocsabequeusar.
Htambmaopodecriarumbancodedadosviascripts,oqueresultarnum
bancodedadosinicialmentemaislimpo,pormdarumpoucomaisdetrabalho
paraconfigurarcertosrecursos,principalmenteseoptouporinstalaroGIqueinclui
oOracleRestart(recursoquegerenciaserviosdoOracle).Seobancodedados
forcriadoviascript,vriasconfiguraesdeveroserfeitasmanualmente.
DBCA,ContaspadroeSenhasImpossveis
Aofinaldacriaodobancodedados,oDBCAmostraumrelatriocomalgumas
informaeseumbotoPasswordManagement.Aoclicarnoboto,ser
apresentadaumalistacomvriascontascriadasporpadropeloDBCA.Estas
contasestobloqueadasepossuemsenhaspadrochange_on_installousenhas
randmicas.Orisconestecasoqueaotentarutilizaralgumadestascontas
usandoasenhapadro,comoMDSYS,ousurioreceberoerroORA28000:
accountislocked,percebendoassimqueacontaexisteeumapossvel
vulnerabilidadenorecursopoderserexplorada.Desbloquearascontasecriar
umasenhaimpossvelparacadaumadelasomaisindicado,poisamensagem
quesermostradaORA1017:invalidusername/password.Destaforma,o
usurioqueesttentandoacessarusandoestacontanosaberseelaexisteou
no.
Paraverificarsehalgumusuriocomumasenhapadro,bastaexecutara
consulta:
SELECT*FROMdba_users_with_defpwd
OOracleutilizaumalgoritmodecriptografiaparaarmazenarasenhadacontano
bancodedados.Quandovocespecificaasenhaduranteacriaonormaldeuma
novacontaelaarmazenadadeformacriptografada.Vejaoexemplodecriaoe
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
8/22
08/04/2015
SeguranaembancosdedadosOracle11g
aconsultanaListagem1parasabercomoasenhafoiarmazenada.
Listagem1.ResultadodoselectnavisoSYS.USER$.
CREATEUSERdevmanIDENTIFIEDBYsqlmagazine;
Usercreated.
SELECTpasswordFROMsys.user$WHEREusername='DEVMAN';
PASSWORD
0842DC7F39E6AE2B
SevocusaraclusulaVALUESnocomandodecriaooualteraodaconta,
poderusarovalorhashcriptografadoparacriarumasenhasemprecisarconhec
la.AssimoOraclenorealizaracriptografiadasenhaearmazenardojeitoque
foiespecificadonocomando.Vejaoexemplo:
CREATEUSERdevmanIDENTIFIEDBYVALUES'0842DC7F39E6AE2B'
EstehashsereferesenhasqlmagazinedousurioDEVMAN.
Paragerarumasenhaimpossvelfcil.Nocomandodecriaooualteraode
umanovacontacoloqueumtextocomumapsaclusulaVALUES.Destaformao
Oraclenuncapoderiadecodificarovalorespecificadoemumasenha.Ovalorparaa
clusulaVALUESdeveriaobedecersregrasdoalgoritmodecriptografiausado
pelosmecanismosinternosdobancodedadosOracleparaqueasenhafossevlida
epossveldeservalidadaduranteosacessos.Quandousamosaclusulaovalor
serarmazenadodaformaquefoiinformado,pormsenoobedecersregrasdo
algoritmodecriptografia,nopoderserusadoparaautenticaoposterior,por
issoumasenhaimpossvel.Vejaoexemplodecomocriarumasenhaimpossvel
enaListagem2oretornodaconsultanavisoSYS.USER$(11g)paraverificar
comoasenhafoiarmazenada.Observeaindaquealmdealterarasenha,aconta
foidesbloqueada:
ALTERUSERdevmanIDENTIFIEDBYVALUES'IMPOSSIVEL'ACCOUNTUNLOCK
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
9/22
08/04/2015
SeguranaembancosdedadosOracle11g
Listagem2.ResultadodoselectnavisoSYS.USER$.
SELECTname,passwordFROMsys.user$ORDERBYusername;
NAMEPASSWORD
MGMT_VIEW108DD8F2F748347B
DEVMANIMPOSSIVEL
ORACLE_OCM6D17CF1EB1611F94
AscontaspadroquesocriadasnobancodedadosOraclesobloqueadase
possuemsenhaexpirada(solicitarnovasenhanoprximoacesso).Taiscontas
podemreceberumasenhaimpossvel:
ANONYMOUS:ContaquepermiteacessoviaHTTPaoOracleXMLDB.Expiradae
bloqueadaapsainstalao
CTXSYS:ContausadaparaadministraodoOracleText.Expiradaebloqueada
apsainstalao
DBSNMP:UsadapeloAgentedeMonitoramento,queumcomponentedo
EnterpriseManager,paramonitoramentodobancodedados.Aberta,ouseja,
disponvelparaacesso.Asenhacriadanainstalaoounomomentodacriao
dobancodedadosviaDBCA
EXFSYS:ContaassociadaaosrecursosdeRulesManagereExpressionFilter
(criaoderegrasefiltroscomplexosparaPL/SQL).Expiradaebloqueadaapsa
instalao
LBACSYS:EstacontautilizadaparaadministraroOracleLabelSecurity,criada
quandovocinstalaorecursoOLS.Expiradaebloqueadaapsainstalao
MDSYS:ContaadministrativaparaOracleSpatialeOracleMultimediaLocator.
Expiradaebloqueadaapsainstalao
MGMT_VIEW:ContausadapeloOracleEnterpriseManagerDatabaseControl.
Aberta,ouseja,disponvelparaacesso.Asenhageradarandomicamenteno
momentodacriaodobancodedados.Ousurionoprecisasaberasenha
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
10/22
08/04/2015
SeguranaembancosdedadosOracle11g
OLAPSYS:ContaparagerenciamentodoCatlogoOLAP.Estacontadepreciada
emantidaporcompatibilidade.Expiradaebloqueadaapsainstalao
ORDDATA:ContmomodelodedadosOracleMultimediaDICOM.Expiradae
bloqueadaapsainstalao
OWBSYS:ContaparaadministraodorepositrioOracleDataWarehouse
Builder.Expiradaebloqueadaapsainstalao
ORDPLUGINS:UsurioparaoperaodorecursoOracleMultimedia.Plugins
fornecidospelaOracleeterceirossoinstaladosnesteschema.Expiradae
bloqueadaapsainstalao
ORDSYS:ContaadministradoradorecursoOracleMultimedia.Expiradae
bloqueadaapsainstalao
OUTLN:Contaquepodeserusadaparaarmazenamentodeinformaeseplanos
deexecuodeSQLsOracleparagarantiraestabilidadedestesplanos,ouseja,
impedirquesejamdescartadospeloCBO(CostBasedOptimizervejaoBOX2).A
estabilidadedeplanosevitaquecertasalteraesnoambientedobancodedados
afetemcaractersticasdedesempenhodeaplicaes,preservandoplanosde
execuoemstoredoutlines.Expiradaebloqueadaapsainstalao
BOX2.CBOCostBasedOptimizer
QuandoumainstruoSQLvlidaenviadaparaoservidorpelaprimeiravez,
oOracleproduzumplanodeexecuoquedescrevecomorecuperarosdados
necessrios.OrecursoresponsvelemgeraroplanodeexecuooCost
BasedOptimizer,ouCBO.OCBOutilizaestatsticasdebancodedadospara
gerarvriosplanosdeexecuoescolhendoaquelecomomenorcusto,ondeo
custoserefereaosrecursosdosistemanecessriosparacompletara
operao.AlmdoCBOexisteoutrootimizadorquepodeserutilizado,o
RuleBasedOptimizer,ouRBO.Estefoiomtododeotimizaooriginale,
comoonomesugere,eraessencialmenteumalistaderegrasqueoOracle
deveseguirparagerarumplanodeexecuo.MesmodepoisqueoCBOfoi
introduzido,estemtodoerautilizadoseoservidorOraclenotivesse
estatsticasinternasrelacionadascomosobjetosreferenciadospelainstruo
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
11/22
08/04/2015
SeguranaembancosdedadosOracle11g
ousefossesolicitadoexplicitamenteporumhintouparmetrode
sesso/instncia.Esteotimizadorsetornouobsoleto.
SI_INFORMTN_SCHEMA:Contaquearmazenavisescominformaessobreo
SQL/MMStillImageStandard(OracleMultimedia).Expiradaebloqueadaapsa
instalao
SYS:Contausadapararealizartarefasadministrativasdobancodedados.
Aberta,ouseja,disponvelparaacesso.Asenhacriadanainstalaoouno
momentodacriaodobancodedadosviaDBCA
SYSMAN:ContausadapararealizartarefasadministrativasdoOracleEnterprise
Manager.AscontasSYSeSYSTEMtambmpodemrealizartaistarefas.Aberta,ou
seja,disponvelparaacesso.Asenhacriadanainstalaoounomomentoda
criaodobancodedadosviaDBCA
SYSTEM:ContaadministrativagenricaparabancosdedadosOracle.Para
ambientesemproduorecomendvelquevoccriecontasadministrativas
individuais.Aberta,ouseja,disponvelparaacesso.Asenhacriadanainstalao
ounomomentodacriaodobancodedadosviaDBCA
WK_TEST:ContaadministradoraparaainstnciapadroWK_INST(Recursos
UltraSearch).Expiradaebloqueadaapsainstalao
WKSYS:SuperusuriodorecursoUltraSearch.TodososobjetosdorecursoUltra
Searchsoinstaladosnesteschema.Expiradaebloqueadaapsainstalao
WKPROXY:ContaadministrativaparaoOracle9iApplicationServerUltraSearch.
Expiradaebloqueadaapsainstalao
WMSYS:ContausadaparaarmazenarinformaessobreorecursoOracle
WorkspaceManager
XDB:ContausadaparaarmazenardadosemetadadosdorecursoOracleXMLDB.
Expiradaebloqueadaapsainstalao.
Almdestas,existemoutrascontasquesocriadasquandoexemplosdeschema
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
12/22
08/04/2015
SeguranaembancosdedadosOracle11g
soopcionalmenteinstaladospeloDBCAnacriaodobancodedados.Estas
contassoschemascomobjetosparatestesoutreinamentos.Elastambmso
criadasbloqueadasecomsenhaexpirada.Soasseguintes:BI(Business
Intelligence),HR(HumanResources),OE(OrderEntry),PM(ProductMedia),IX
(InformationExchange),SH(Sales)eSCOTT.Taiscontastambmpodemreceber
senhasimpossveis.
Listener
AmaioriadasatividadesdobancodedadosocorreatravsdaredeeseoOracle
Netnoestiverotimizadoparaaumentodasegurana,apareceromaisbrechas
parainvasesousniffing(interceptaodotrfegodarede).Oprotocoloderede
utilizadopelobancodedadosOracleoTNS(TransparentNetworkSubstrate)que,
porsuavez,utilizaporpadrooprotocoloTCP/IP.Conexesrealizadasnobanco
dedadossoestabelecidasatravsdolistener,queopontodeentradapara
novasconexesedeveserconfiguradoadequadamenteparagarantirasegurana
eevitarquealgumoinvada,desligueoecontroleofazendocomqueoprocesso
dolistenergerearquivosderastreamento(trace).
Olistenerformadopelosseguintescomponentes:
1.Oexecutvelnocaminho$ORACLE_HOME/bin/tnslsnr
2.OListenerControlUtility,queoutilitriogerenciador,nocaminho
$ORACLE_HOME/bin/lsnrctl
3.Oarquivodeconfigurao$ORACLE_HOME/network/admin/sqlnet.ora,quedefine
osparmetrosderedeusadospelolistener
4.Oarquivo$ORACLE_HOME/network/admin/listener.ora,quedefineoendereoIP,
porta,protocolo,serviosqueolistenerirouvir,almdeoutrasopes
5.Oarquivo$ORACLE_HOME/network/admin/tnsnames.orausadoparamapear
descritoresdeconexo,quesoasentradasTNStraduzidasnomomentoda
conexo
6.Logsearquivosderastreamento(trace),quesogeradosem
$ORACLE_BASE/diag/tnslsnr/<db_name>/listener/trace.
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
13/22
08/04/2015
SeguranaembancosdedadosOracle11g
importantetornarolistenermaissegurodesdesuacriaopelainstalaodo
softwareOracleoupeloutilitrionetmgr(NetManager),masalgumasmelhorias
podemserrealizadasatravsdalinhadecomandousandooutilitriolsnrctl
(ListenerControlUtility)oueditandoosarquivosdeconfigurao.Algumas
medidaspodemsertomadasparaaumentaraseguranadolistener:
CrieocomumnomediferentedopadroLISTENER
Aocrilo,tenteusarumaportadiferentedopadro(1521).Estaseraprimeira
portaemcasodetentativadeinvasoaobancodedados
NomomentodacriaotambmrecomendvelusaroIPaoinvsdonomedo
servidorouconfigurarparmetroscomotcp.validnode_checkinge
tcp.invited_nodes/excluded_nodesparaevitarqueolistenerescuteemoutros
endereosindesejados.Configuraonecessriacasooservidorpossuamaisde
umendereoIPconfigurado
Configureumasenhaparaolistener
LimiteousodeprocedimentosexternoseacessosaosexecutveisdoSO.Voc
poderemoverarefernciaaprocedimentosexternossenoutilizaEXTPROCdentro
doarquivodeconfiguraodolistener
Monitoreoarquivodelogdolistenerehabiliteotraceeventualmentepara
anlises
Limiteaspermissesdosexecutveisearquivosdeconfiguraodolistener.
Parametrizao
Parmetrosdeinstnciasoconfiguraesespecficasparaainicializaoe
funcionamentodeumainstnciadebancodedadosOracle.Paraqueumainstncia
iniciecorretamentenecessrioumarquivodeparmetrosouparameterfile.
Apsainicializaodainstncia,algunsparmetrossodinmicos,ouseja,podem
sermodificadosenquantoainstnciaestemfuncionamento.Osdemaissono
dinmicosessurtiroefeitoapsareinicializaodainstncia.
Existemalgunsparmetrosdeinstnciaquepodemaumentaraseguranado
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
14/22
08/04/2015
SeguranaembancosdedadosOracle11g
banco:
o7_dictionary_accessibility=FALSENodinmico,controlarestriesem
privilgiosdesistema.SeovalordoparmetrofordefinidocomoTRUE,acessos
aosobjetosnoschemaSYSsopermitidos.OvalorpadroFALSEegaranteque
osprivilgiosquepermitemacessosaqualquerobjetonobancodedadosno
acessemobjetosnoschemaSYS.
remote_os_authent=FALSENodinmico,especificaquandoclientesremotos
seroautenticadosdeacordocomovalordoparmetrodeinstnciaespecificado
emOS_AUTHENT_PREFIX.No11gesteparmetrodepreciadoeovalorpadro
FALSE
remote_os_roles=FALSENodinmico,especificaquandoROLESdosistema
operacional(grupos,permisses,etc.)controlamROLESdobancodedadosOracle.
OvalorpadroFALSEfazcomqueoOracleidentifiqueegerencieasROLESparaos
clientes
remote_listener=""Dinmico,especificamanualmenteonomedolistenerem
queobancodedadosserregistrado.Geralmenteutilizadoquandooambiente
estemmodoclusterouquandoolistenerestemoutramquinadiferentede
ondeobancodedadosreside.Definaovalor""(vazio)quandonohouver
necessidadedeconfiguraroLISTENERemoutroservidor.Nohvalorpadro
sql92_security=TRUEEspecificaseosusuriosprecisamdeprivilgiosde
SELECTemumatabelaparaquepossamexecutarcomandosdeUPDATEouDELETE
nelas.OvalorpadroFALSEerecomendvelalterarparaTRUE
_trace_files_public=FALSEGeralmentetodososarquivosdetracepossuem
permissesdeleituraeescritaparaousuriodosistemaoperacionaldonodo
softwareOracle(usurioquerealizouainstalaodosoftware,geralmenteoracle)
esomenteleituraparaogrupodeinstalaoOraclenosistemaoperacional(grupo
donodoinventriodetodoosoftwareOracleinstaladonamquina,geralmente
oinstall).Outrosusuriosnopossuemprivilgiosdeleitura.Comoarquivosde
tracepodempossuirinformaessensveisdobancodedados,recomendvelque
ovalordesteparmetropermaneaFALSE.Altereapenassequiserqueoutros
usuriosdosistemaoperacionalpossamlerosarquivosdetrace.Ovalorpadro
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
15/22
08/04/2015
SeguranaembancosdedadosOracle11g
FALSE.OBS.:OsuporteOraclenodsuporteaefeitosindesejadoscausadospor
alteraesdeparmetrosocultossemseuconsentimento.Parmetrosocultos
comeamcom_.
Arquivoglogin.sql
Existeumarquivo.sqlqueoutilitriodelinhadecomandoSQL*Plusexecuta
semprequeaberto.Estearquivooglogin.sql.Elecostumaficarnapasta
$ORACLE_HOME/sqlplus/admine,naverso10g,contmalgunscomandospara
definioeformataodoambienteSQL*Plus.Naverso11g,aconfiguraodo
ambienteSQL*Plusfoiincludanobinriosqlpluseoglogin.sqlspossuialguns
comentriosinformandoqueoscriptexecutadoautomaticamenteequevoc
podecolocarmaiscomandoslsedesejar.
Existetambmumarquivochamadologin.sql(locallogin)queexecutadoantes
doglogin.sql(globallogin)quandoologin.sqlexistirnamesmapastaondeo
comandosqlplusforexecutadoouexistirnocaminhodeclaradonavarivel
SQLPATH.Asconfiguraesnologin.sqlsolidasprimeirodoqueasconfiguraes
noglogin.sql.
Oglogin.sqlumscriptquepodesertilquandovocdesejaquealgumcomando
sejaexecutadoautomaticamenteapsainicializaodoSQL*Plus,maspodese
tornarumabrechadesegurana.Imaginesealgumapessoamintencionada
acessaamquinaondevocexecutaoSQL*Plus(sendoservidoroucliente)e
alteraocontedodestearquivo?necessrioapenasacessarabasededados
comumusurioautenticadoquetodososdadosdaaplicaooudobancodedados
podemestarcomprometidos,principalmenteseousurioforadministrador(DBA,
porexemplo).Paraevitaresseproblema,possvelfazeroseguinte:
1.Restringiraspermissesdoarquivoglogin.sqloudapastaondeseencontraou
aindaremovloparaevitarquesejaalteradoouexecutado
2.Impediraexecuodoscriptlogin.sqliniciandooSQL*Pluscomarestrio3:
$sqlplusr3...
OBS.:Estenveltambmdesabilitaqualquerinteraocomosistemadearquivosa
partirdoSQL*Plus
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
16/22
08/04/2015
SeguranaembancosdedadosOracle11g
3.AdquiriroOracleDatabaseVaulteconfigurloparaimpedirquecertos
comandossejamexecutados,mesmosendoDBA
4.UsarumaferramentadiferentedoSQL*Plus.
Apesardeestasalternativasseremvlidas,aOracleaindanooficializoualguma
queeviteaexecuoautomticadosscriptsglogin.sqlelogin.sqlaoiniciaro
SQL*Plus.
SenhasCaseSensitive
Porpadro,obancodedadosOracle11gcriasenhasCASESENSITIVE,ouseja,faz
diferenciaoentremaisculaseminsculas.Porm,sevocestivermigrandoo
bancodedadosde10gpara11g,assenhascriadasanteriormentepermanecero
comoCASEINSENSITIVEatquevocasaltere.Ocontroledestecomportamento
feitopeloparmetrosec_case_sensitive_logon,queporpadroTRUE.
recomendvelcriarsenhasmaisfortesparaasuaaplicao.Porincrvelque
parea,hmuitoslugaresporaqueasenhadeumacontadeaplicaooprprio
nomedaconta.Ex:ContaMDSYS,senhaMDSYS.Paraverificarquaisusurios
possuemsenhasnoformato11g,isto,CASEINSENSITIVE,vocpodeexecutara
seguinteconsulta:
SELECTusername,password,password_versionsFROMdba_users
Perfisdeusuriosefunodeverificaode
senhas
Muitosdesconhecemaexistnciadeumafunoquepodesercriadapormeiode
umscriptencontradoem$ORACLE_HOME/rdbms/admin/utlpwdmg.sqlquetemo
objetivodeimporregrasduranteacriaodeumasenhaparaascontasnobanco
dedados.Quandovocexecutaessescript,umafunochamada
VERIFY_FUNCTION_11gcriadanobancodedados.Parautilizla,noentanto,
precisoaindadefinirovalorVERIFY_FUNCTION_11gparaoparmetro
PASSWORD_VERIFY_FUNCTIONdoperfil,ouprofile,queestsendocriadoou
modificado.
AfunoVERIFY_FUNCTION_11ggarantequeasenha:
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
17/22
08/04/2015
SeguranaembancosdedadosOracle11g
Sejaconfiguradacomnomnimooitocaracteres
Nopossaseronomereversodaconta
Nosejaonomedeusuriocomumsufixonumricode1100
Nosejaoraclecomumsufixonumricode1100
Nosejaonomedobancodedados
Nosejaonomedobancodedadoscomumsufixonumricode1100
Tenhapelomenosumdgitoeumcaractere
Precisesediferenciarpelomenostrsposiesdaantigasenha
Nosejaumapalavraconhecidadafuno.Asseguintespalavrasnopodemser
utilizadas:welcome,database,account,user,password,oracle,computer,abcd.
VerifiqueanecessidadedereconfiguraroperfilDEFAULTdobancodedadospara
tornlomaisseguro.Emumperfilpossvelconfigurarvriosparmetros
especficosparacontas,comoporexemplo:
PASSWORD_LIFE_TIMEValidadedeumasenhaemdias
PASSWORD_GRACE_TIMEPerododeavisoprvioemdiasparaalteraode
umasenhaantesqueexpire.Entraemaoapsotempoespecificadoem
PASSWORD_LIFE_TIME
PASSWORD_REUSE_TIMEEspecificaumtempolimiteemdiasantesqueuma
senhaanteriorpossaserreutilizada
PASSWORD_REUSE_MAXNmerodevezesqueumasenhapodeser
reutilizada
FAILED_LOGINS_ATTEMPTNmerodetentativasdelogincomfalhaantes
queoOraclebloqueieaconta
PASSWORD_LOCK_TIMEEspecificaquantotempoacontaficarbloqueada
apsatingironmeroespecificadoemFAILED_LOGINS_ATTEMPT
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
18/22
08/04/2015
SeguranaembancosdedadosOracle11g
PASSWORD_VERIFY_FUNCTIONEspecificaafunoparaverificarasenha
queserdigitada.AquipodeserusadaafunoVERIFY_FUNCTION_11g.
Concluso
Almdoquefoidestacadonesteartigo,recomendvelverificarasopesde
auditoriaecriptografiaparatornarobancodedadosaindamaisseguro.Aprofunde
eexploreoutrosrecursosdeseguranaqueobancodedadosOracleoferececomo
OracleAuditVaultandDatabaseFirewallparamonitoraraatividadedobancode
dados,bloquearameaaseauditoriaeficienteAdvancedSecurityparacriptografar
dadosedataredaction(mascaradadosdurantealeiturasemalterarefetivamente
osdadosarmazenados)DatabaseVaultparaoferecermaiorcontrolesobre
usuriosprivilegiadosLabelSecurityparagerenciaracessoadadosbaseadona
classificaodeusuriosDataMaskingparamascaramentodedadosem
ambientesdedesenvolvimento,testesehomologao.Estesevriosoutros
recursospodemseradquiridoseimplementadosparatornarobancodedados
Oraclemaisseguro.
Links
VerizonBusinessRISKTeamDataBreachReport(2008)
http://www.verizonenterprise.com/resources/security/databreachreport.pdf
OracleGridInfrastructureInstallationGuide11gRelease2(11.2)for
Linux
http://docs.oracle.com/cd/E11882_01/install.112/e22489/prelinux.htm
OracleDatabaseInstallationGuide11gRelease2(11.2)forLinux
http://docs.oracle.com/cd/E11882_01/install.112/e24321/pre_install.htm
OracleDatabase2Day+SecurityGuide
http://docs.oracle.com/cd/E11882_01/server.112/
e10575/tdpsg_user_accounts.htm
OracleDatabaseSecurity
http://www.oracle.com/br/products/database/security/resources/index.html
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
19/22
08/04/2015
SeguranaembancosdedadosOracle11g
EduardoValentim
ComseteanosdeexperinciaembancodedadosOracle,possuivastoconhecimentotcnicoede
mercadoenvolvendobancosdedadosereasnoramodeTecnologiadaInformao.Administrabasesde
dadosOracleeSQLServerdemisso[...]
Oquevocachoudestepost?
Gostei(2)
(0)
Nohcomentrios
Postardvida/Comentrio
Meuscomentarios
Servios
Incluaumcomentrio
AdicionaraosFavoritos
Marcarcomolido/assistido
Incluiranotaopessoal
Versoparaimpresso
+SQL
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
20/22
08/04/2015
SeguranaembancosdedadosOracle11g
Mais posts
Video aula
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
21/22
08/04/2015
SeguranaembancosdedadosOracle11g
Video aula
DevMedia
Curtir Voccurtiuisso.
Voceoutras63.895pessoascurtiramDevMedia.
PluginsocialdoFacebook
HospedagemwebporPorta80WebHosting
http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145
22/22