Breakable Oracle!

Som du sikkert husker, kørte Oracle kampagnen Unbreakable Oracle for en 5-6 år siden. Uanset hvad man ellers syntes om Larry 'mine is way bigger than yours' Ellison, så måtte man være begejstret for den kampagne, fordi den signalerede, at Oracle ville tage deres sikkerhed meget mere alvorligt.

Desværre virker det bare ikke som om, at sikkerhed er det, som Oracle går mest op i. Hvis du laver en default installation af en Oracle-database, kommer der en række konti med tilhørende default passwords. Det er bare for dårligt.

Fx bruger Oracle Intelligent Agent kontoen DBSNMP. Da DBSNMP har 'create library'-rettigheder, er det katastrofalt, at default passwordet er ' ja rigtigt gættet ' DBSNMP.

Desværre må vi jo konstatere alt for mange databaseadministratorer tilsyneladende ikke har tiden eller kompetencen til at sikre deres databaser tilstrækkeligt.

Derfor er det bare uacceptabelt, at Oracle stadig ikke har ændret på disse default passwords.

Situationen bliver jo endda værre af, at leverandører af 3. parts software undertiden rent faktisk anvender Oracles default passwords i deres programmer, når de kalder databasen.

Det er trist, at Oracle ikke tager deres sikkerhed mere alvorligt.

Oracle ? breakable by default!

Kommentarer (18)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Anders Winthereik

Enig i at det er skidt med de passwords, men det bør ikke være hovedargumentet for hvilken db-server man skal vælge. Når DBA´en har skiftet passwords efter installation, er man ligesom ude over det..

  • 0
  • 0
Flemming G. Jensen

Bruger I stadig Oracle 8.1 hos ScanJour, Jesper?

Oracle er rullet et par versioner videre siden da, og opsætningen af diverse konti er ændret, herunder OIA. Så du kan ikke oprette en Oracle 10 instans med OIA, der har DBSNMP som password.

Her er et snip fra installation vejledningen til Linux. Proceduren er ens på alle arkitekture.

All databases created by the Database Configuration Assistant (DBCA) include the SYS, SYSTEM, SYSMAN, and DBSNMP database accounts. In addition, Oracle provides several other administrative accounts. Before using these other accounts, you must unlock them and reset their passwords.

Password recommendations

Apply the following guidelines when specifying passwords:

  • Passwords must be between 4 and 30 characters long.

  • Passwords must be from the database character set and can include the underscore (_), dollar ($), and pound sign (#) characters.

  • Passwords must not start with a numeral.

  • Passwords must not be the same as the user name.

  • Passwords must not be Oracle reserved words.

  • The SYS account password must not be change_on_install.

  • The SYSTEM account password must not be manager.

  • The SYSMAN account password must not be sysman.

  • The DBSNMP account password must not be dbsnmp.

  • If you choose to use the same password for all the accounts, then that password must not be change_on_install, manager, sysman, or dbsnmp.

  • Passwords should have at least 1 alphabetic, 1 numeric, and 1 punctuation mark character

  • Passwords should not be simple or obvious
    words, such as welcome, account, database, and user.

Se mere på http://download-uk.oracle.com/docs/cd/B19306_01/install.102/b15660/
inst_task.htm#sthref809

Der er naturligvis andre sikkerhedsproblemer i Oracles produkter; men knap så simple.

  • 0
  • 0
John Juul Jensen

Det kan da ikke komme som en overraskelse at man selv skal vedligeholde sine passwords på priviligerede brugere - det kan selv junior-DBA'ere finde ud af - og den med tiden køber jeg ikke .....

'alter user dbsnmp identified by password;' + at ændre i 1 config fil.

;-)

/John Juul Jensen

  • 0
  • 0
Karsten Nyblad

Som jeg husker det, drejede Oracles reklamekampagne om at de havde fået en cluster-version af Oracle, så man kunne opbygge et system af servere, der kunne klare at en eller flere servere brød ned.

Oracle har udsendt for mange sikkerhedsopdateringer, til at jeg tror, de tør reklamere med høj sikerhed mod hackere.

  • 0
  • 0
Jesper Laisen

Det er rigtigt, at Oracle introducerede clustering ved samme lejlighed, men jf. dette Unbreakable: Oracle's Commitment to Security white paper fra februar 2002 (http://www.oracle.com/technology/deploy/security/pdf/unbreak3.pdf) er deres kampagne en commitment til sikkerhed:

Unbreakable is our security commitment to our customers yesterday, today and tomorrow.
Unbreakable is not a three week or even six-month marketing campaign;
Unbreakable builds upon ten years of building provably secure databases.
Unbreakable extends the secure development process of our core products
across the entire Oracle product stack.

  • 0
  • 0
Jesper Laisen

Nedenstående er taget fra Oracle Database Security Checklist white paper fra januar 2007 (http://www.oracle.com/technology/deploy/security/pdf/twp_security_checkl...):

The most trivial method by which Oracle Database can be compromised is a default database server user account which still has a default password associated with it even after installation.

The Oracle database installs with a number of default (preset) database server user accounts. Upon successful installation of the database server, the Database Configuration Assistant automatically locks and expires most default database user accounts.
If a manual (i.e. without using Database Configuration Assistant) installation of Oracle Database is performed, then no default database users are locked upon successful installation of the database server. Left open in their default states, these user accounts can be exploited to gain unauthorized access to data or disrupt database operations.

Der er altså stadig default passwords i Oracle-databaser ved såvel manuel installation som ved brug af Database Configuration Assistant.

  • 0
  • 0
John Juul Jensen

Betyder det at de store firewall leverandører har et problem med deres sikkerhed når de leverer deres bokse med standard-password? Nej, vel? - for der ved man godt hvad der sker hvis man ikke ændrer password.

Det er i bund og grund et spørgsmål om at folk ikke ved nok om hvad det er de har mellem hænderne og jeg mener bestemt ikke det er fair at skyde på producenten når problemet faktisk er kompetencen hos den DBA'er der sidder og drifter systemet.

Det er jo ikke en "hidden feature" at man kan ændre password på sin database ;-)

/John Juul Jensen

  • 0
  • 0
Paw Nielsen

Jeg syntes denne artikel er forældet og der slet ikke er noget problem mere. Den skulle være postet for år tilbage.
Hvis man skal kalde det et problem må vi kigge tilbage på de ældre versioner, men ikke 10g+.

Hvis man vælger at installere en Oracle database manuelt, vil det sikkert også betyde at man ikke behøver læse manualen = er erfaren DBA. Så denne person vil også vide at han skal ændre password på default konti + sætte password på listener osv.

Hvis du holder sig til database assistenten bliver du jo netop spurgt om hvad password skal sættes til - og derudover bliver de konto expired.

Oracle tager i høj grad sikkerheden alvorligt og er med deres Critical Patch Updates (CPU) og Security Alerts hurtigt ude når der opstår ting der kan være farligt for dit oracle setup.

Jeg er desuden helt sikker på at et større firma med respekt for sig selv - og de ”iriterende” interne/externe auditørkorps kigger på den slags og har styr på det.

Det lille firma som ikke kender ret meget til Oracle og ikke har en DBA vil sikkert have fået et externt firma til at installere - eller selv have brugt database assistenten.

Privat brugeren der sidder derhjemme og skal installere Oracle for første gang vil få en langt nemmere installation end førhen - og vil derfor også kunne komme nemmere i gang med Oracle.

I sidste ende handler det om at finde et passende leje for sikkerheden, så det ikke bliver for besværligt for den nye bruger, men kan sikres så det kan køre enterprise løsningerne.

Alt i alt tror jeg at sikkerheden er ved at finde et rigtig fint niveau for Oracles database.

  • 0
  • 0
Paw Nielsen

Søgte lige hurtigt på det sikkerhedsproblem du nævner i din artikel.

Der kom en patch både til 8i og 9i i starten af 2003 som fjernede ’create library’. Prøv at kigge i patchnotes til 9.2.0.3.

Så som sagt lidt old news som er rettet for længst.

Hvis man skal nævne et problem fra det virkelige liv med Oracle og manglende sikkerhed så kig hellere på de virkeligt kritiske brugere i databasen.

Brugeren SYS har sjovt nok et password der default hedder change_on_install.
Og det hænder desværre at man kommer forbi en kunde med en sådan installation.

De har typisk fået en 3parts leverandør til at installere deres Oracle og så har boxen stået i serverrummet og kørt i nogle år uden at nogle har kigget på den siden.

  • 0
  • 0
Flemming G. Jensen

Du lægger voldsomt indigneret fra land med

"Desværre virker det bare ikke som om, at sikkerhed er det, som Oracle går mest op i. Hvis du laver en default installation af en Oracle-database, kommer der en række konti med tilhørende default passwords. Det er bare for dårligt."

og

"Fx bruger Oracle Intelligent Agent kontoen DBSNMP. Da DBSNMP har ’create library’-rettigheder, er det katastrofalt, at default passwordet er – ja rigtigt gættet – DBSNMP."

Af vejledningen som du citerer fremgår det klart, at hvis man konfigurer gennem databasekonfigurations assistenten, så er DBSNMP kontoen expirede og closed. Hvis man derimod laver en manuel installation, så er den ganske rigtigt åben. Men manuel installation er heller ikke "standard" metoden til at installere Oracle. Så den forudsætter at du ved havd du gør.

Default kontiene blev lukket efter brugerkritik fra version 9 af, så Oracle har altså taget den kritik til sig for længe siden.

Det er glimrende at kritisere sikkerheden i Oracle's produkter og Oracle's håndtering af sikkerhedspatches samt deres markedtingskampagner. Der er givetvis nok at tage fat på. Hvis kritikken indeholder mere substans, end et special tilfælde af noget Oracle rent faktisk har forsøgt at løse, så kunne det jo resultere i mere sikre Oracle produkter.

  • 0
  • 0
John Juul Jensen

Jeg tror ikke vi bliver enige :-)

Min holdning er klart at man da umuligt kan klandre andre for at man ikke selv er kompetent nok.

Jeg har set mange eksempler på Oracle installationer der er mildt sagt er 'helt i hegnet' fordi konsulenter og 3'de parts leverandører af den ene eller anden art tror de har forstand på Oracle bare fordi de kan navigere rundt i de forskellige skærmbilleder under installationen.

Oracle er kompliceret og det må folk lære at forstå.

/John Juul Jensen

  • 0
  • 0
Mogens Nørgaard

For det første opfatter jeg Jespers ærinde som værende at kommentere Oracle's brug af ordet "Unbreakable", når det ikke er tilfældet (altså når det er løgn, for nu at tale dansk).

Jeg har holdt The Economist siden 1983 og i de sidste par år har jeg måttet se på denne kampagne på bagsiden af mit elskede blad uge efter uge.

Men Oracle er jo IKKE unbreakable. Der er nye versioner af Oracle, ja, men så sandelig også nye sikkerhedshuller. Så jeg synes faktisk hverken det er relevant at nævne default passwords for diverse accounts (slemt som det jo er) eller det faktum, at diverse ting er blevet fixet i nyere versioner.

Nye versioner, nye problemer - og det ved både JohnJohnJohn og Paw jo så ganske udmærket, eftersom vi var kolleger i Oracle Support i de gode, gamle dage. Der er masser af måder at breake Oracle på idag (kig på petefinnigan.com), og det er OGSÅ ligegyldigt, for det er tilfældet med alle systemer.

At lave knee-jerk forsvar for Oracle på dette område er counter-productive i mine øjne. At hævde, at "Oracle er komplekst" er noget vi konsulentfirmaer gør for at tjene flere penge på usikkerheder hos kunder. Oracle er jo ikke mere kompliceret end alt muligt andet IT-skrammel. Vi vil bare gerne have det til at se sådan ud, så vi kan se mere magiske ud når vi fixer problemer for kunder.

Oracle er et stykke meget, meget stabilt software, som kører i laaang tid i langt de fleste installationer uden problemer - hvis det dog bare får lov at være i fred for alle mulige eksperter :-)).

James Morle holdt et foredrag på vores Database Forum for et par år siden kaldet "Unbreakable" og han skrev tillige et udmærket paper desangående, som jeg med glæde mailer til interesserede (mno@MiracleAS.dk).

I dette papir tager James fat i dét, som Unbreakable måske egentlig handler om fra Oracle's side, nemlig at sælge nogle RAC-licenser til clustre. Og det har de færreste brug for, skønt kompleksiteten i en RAC-løsning gør den meget atråværdig for konsulentvirksomheder, høhø.

Summasummarum: Oracle er sårbart som ind i Helvede nu, som i tidligere versioner, og det kan vi ikke lukke øjnene for. Ligesom vi ikke kan lukke øjnene for sikkerhedshuller i andre softwareprodukter.

Men at Oracle kalder sig for Unbreakbale er såmænd løgn fra marketingsafdelingen. Det kan blive til en "sandhed" når det bliver gentaget tit nok, men det er stadig ikke rigtigt.

Mvh.

Mogens

  • 0
  • 0
John Juul Jensen

"At hævde, at "Oracle er komplekst" er noget vi konsulentfirmaer gør for at tjene flere penge på usikkerheder hos kunder. "

"Vi bruger ikke skræmmekampagner", Mogens ;-) og hvis noget er "skræmme" her må det da absolut være Jesper's inledning.

Hvor tit har du ikke oplevet at leverandører af alverdens applikationssoftware(det være sig store såvel som små) prøver at installere Oracle databaser selv med meget uheldige resultater til følge? Applikationer installeret i SYSTEM tablespace, ingen limit på datafiler der kan autoextende, datafiler på et net mount på en fil-server, alm. filbackup af datafiler på en kørende database ...... Det er tilsyneladende ikke så nemt som vi selv mener det er og hvis det var det, gjorde alle det jo :-) Ja, Oracle er ligesom alt andet software - ikke komplekst for den som forståe det :-)

Hvis du læser bloggen, vil du kunne se at jeg opponerer mod den usaglige måde at angribe leverandører på - i dette tilfælde Oracle, som jeg tilfældigvis kender en del til(havde det været VMS der blev usagligt angrebet, havde jeg nok lænt mig tilbage i min stol og nikket anerkendende til artiklen :-D ).

Vi er enige i at Oracle ikke er "Unbreakable" - det bliver den helt sikkert aldrig - men jeg bryder mig ikke om at man angriber en leverandør på noget som man selvklart ikke har undersøgt, eller som rent faktisk ikke er og heller aldrig har været et problem for os som kender til Oracle softwaren - du plejer da om nogen at gå på barikaderne hvis noget er uretfærdigt, eller er du for alvor ved at blive en af de "gamle bitre" ;-)

/John Juul Jensen

  • 0
  • 0
Log ind eller Opret konto for at kommentere