Sei sulla pagina 1di 22

08/04/2015

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

Terceira Forma Normal - Curso Modelagem de Dados - Aula


26
Video aula

Aplicaes da Segunda Forma Normal - Curso Modelagem de


Dados - Aula 25
Video aula

Segunda Forma Normal - Curso Modelagem de Dados - Aula


24
Video aula

Primeira Forma Normal - Curso Modelagem de Dados - Aula


23
Video aula

Normalizao e Anomalias - Curso Modelagem de Dados Aula 22


Video aula

Dependncias Funcionais - Curso Modelagem de Dados Aula 21


Video aula

MySQL Administrador - Curso Completo de MySQL - Aula 16

http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145

21/22

08/04/2015

SeguranaembancosdedadosOracle11g

Video aula

Ferramentas e Utilitrios - Curso Completo de MySQL - Aula


15
Video aula

Mais sobre o Prompt de Comando - Curso Completo de


MySQL - Aula 14
Listar mais contedo

Anuncie | Loja | Publique | Assine | Faleconosco

DevMedia
Curtir Voccurtiuisso.

Voceoutras63.895pessoascurtiramDevMedia.

PluginsocialdoFacebook

HospedagemwebporPorta80WebHosting

http://www.devmedia.com.br/segurancaembancosdedadosoracle11g/29145

22/22

Potrebbero piacerti anche