Hjem Personlig finansiering En case studie i sikkerhetsproblemet i databasen - dummies

En case studie i sikkerhetsproblemet i databasen - dummies

Innholdsfortegnelse:

Video: IoT EcoStruxure™ Powers Peace of Mind for Grand Medica 2024

Video: IoT EcoStruxure™ Powers Peace of Mind for Grand Medica 2024
Anonim

I denne case-studien delte Chip Andrews, en ekspert i SQL Server-sikkerhet, denne opplevelsen av (etisk) hacking inn i en klient database for å avdekke sikkerhetsfeil. Dette eksemplet gir en advarsel for å beskytte din viktige informasjon ved å insistere på lyddatabasesikkerhet.

Situasjonen

Under en rutinemessig penetrasjonstest utførte Mr. Andrews de obligatoriske Google-søkene, domenenavn, operativsystemet fingeravtrykk og portscaninger, men dette nettstedet ble låst fast. Ved å gå videre til det nettbaserte programmet som kjører på systemet, ble han umiddelbart konfrontert med en påloggingsside ved hjelp av SSL-kryptert skjemaautentisering.

Ved å sjekke kilden til nettsiden, la han merke til at et skjult App_Name-felt ble sendt til applikasjonen når en bruker forsøkte å logge på nettstedet. Kan det være at utviklerne kanskje har mislyktes i å utføre riktig inntastings validering på denne uskyldige parameteren? Jakten var på.

Resultatet

Først var det på tide å samle verktøyet. På tidspunktet for denne penetrasjonstesten valgte Andrews å bruke følgende: Paros Proxy, Absinthe, Cain & Abel, Data Thief og Microsoft SQL Server Management Studio / SQL Server (Express Edition), som alle er tilgjengelige gratis.

For det første brukte han Paros Proxy til å gi mer kontroll og synlighet til webforespørsler til webserveren.

Etter å ha spidert nettstedet for tilgjengelige sider og utført en rask sårbarhetskontroll for SQL-injeksjon, ble det bekreftet at parameteren App_Name syntes å føre til at programmet kaste et feil 500-unntak, noe som indikerer et programfeil. Penetrasjonstester er en av de sjeldne anledninger når en søknadsfeil er et ønskelig resultat.

Fordi programfeilen indikerte at Mr. Andrews kunne injisere utilsiktede tegn i SQL-koden som ble sendt fra applikasjonen til databasen, kunne han se om det var en utnyttbar tilstand.

En felles test som fungerer med Microsoft SQL Server-databaser, er å injisere en kommando, for eksempel WAITFOR DELAY '00: 00: 10 ', som fører til at databaseserveren stanser i 10 sekunder. I et program som vanligvis returnerer en side på ett sekund eller mindre, er en konsekvent 10 sekunders forsinkelse en god indikator for at du kan injisere kommandoer i SQL-strømmen.

Deretter forsøkte Mr. Andrews å bruke Data Thief-verktøyet for å angripe innloggingssiden.Dette verktøyet forsøker å tvinge databasen til å bruke en OPENROWSET-kommando for å kopiere data fra måldatabasen til Mr. Andrews database plassert på Internett.

Dette er vanligvis en svært effektiv måte å hente store mengder data fra utsatte databaser, men i dette tilfellet ble hans angrep fult! Databasebehandleren på målet hadde deaktivert OPENROWSET-funksjonaliteten ved å konfigurere alternativet Disable Adhoc Distributed Queries.

Med omhu som sit ord, fortsatte Andrews med det neste verktøyet - Absinthe. Dette verktøyet bruker en teknikk som kalles blind SQL-injeksjon for å bestemme om data ved hjelp av enkle ja eller nei spørsmål i databasen. For eksempel kan verktøyet spørre databasen om det første bokstaven i et bord er mindre enn "L. "

Hvis ja, kan programmet ikke gjøre noe, men hvis ikke, kan programmet kaste et unntak. Ved hjelp av denne enkle binære logikken er det mulig å bruke denne teknikken til å avsløre hele databasestrukturen og til og med dataene som er lagret inne - om enn veldig sakte. Ved hjelp av verktøyet identifiserte han et bord med sensitiv kundeinformasjon og lastet ned flere hundre poster for å vise klienten.

Endelig var det på tide å prøve en siste handling av database dastardliness. Først, Mr Andrews lastet verktøyet kalt Cain & Abel og satte det inn i sniffing modus. Deretter brukte han ved hjelp av Paros Proxy og den allerede identifiserte sårbare parameteren, den utvidede lagrede prosedyren xp_dirtree, som er tilgjengelig for SQL Server-databasebrukere, for å forsøke å vise en katalog på sin Internett-tilkoblede maskin ved hjelp av en Universal Naming Convention-sti.

Dette tvang måldatabasen til å prøve å autentisere seg mot Mr. Andrews maskin. Fordi Cain & Abel lyttet på ledningen, fikk den hash av utfordringen som ble brukt til å autentisere den eksponerte filandelen.

Ved å overføre denne hashen til passordskraperen som er innebygd i Cain & Abel, ville Mr. Andrews ha brukernavnet og passordet til kontoen der den sårbare SQL Server kjørte på bare et tidspunkt.

Vil denne hackede kontoen bruke det samme passordet som administrasjonskonto for webapplikasjonen? Ville dette passordet være det samme som den lokale administratorkontoen på verten? Det var spørsmål for en annen dag. Det var på tide å samle alle innsamlede data, utarbeide en rapport for klienten, og sette verktøyene vekk for en annen dag.

Chip Andrews er medstifter av sikkerhetskonsulentfirmaet Special Ops Security, Inc. og eier av SQLSecurity. com, som har flere ressurser om Microsoft SQL Server-sikkerhet, inkludert SQLPing3-verktøyet. En medforfatter for flere bøker om SQL Server-sikkerhet og en Black Hat-presentator, har Mr. Andrews vært fremme SQL Server og applikasjonssikkerhet siden 1999.

En case studie i sikkerhetsproblemet i databasen - dummies

Redaktørens valg

Vanlige visuelle studio-tastaturgenveier - dummier

Vanlige visuelle studio-tastaturgenveier - dummier

Du kan få tilgang til mange av funksjonene du bruker i Visual Studio til Lag en Silverlight-applikasjon gjennom tastaturgenveier. Her er de vanlige snarveiene som hjelper deg med å utføre oppgaver raskt i Visual Studio. Tastatur snarvei Handling Ctrl + Alt + F1 Åpne Visual Studio Documentation Ctrl + Shift + B Bygg programmet Ctrl + F5 Kjør prosjektet Ctrl + Alt + X Åpne verktøykassen hvis ...

Velg riktig format for e-postmarkedsføringsmeldingen din - dummies

Velg riktig format for e-postmarkedsføringsmeldingen din - dummies

Som Du komponerer markedsførings-e-postene dine, husk at formatet på e-posten din visuelt kommuniserer hovedideen til innholdet før publikum selv begynner å lese det. Forbrukerne forventer at formatet på e-posten din samsvarer med informasjonen den inneholder, slik at bruk av riktig format bidrar til å bygge publikums tillit. Velg ...

Kombinere flere samtaler til handling i din markedsføring e-post - dummies

Kombinere flere samtaler til handling i din markedsføring e-post - dummies

Din e-postmarkedsføringslisten består sannsynligvis av prospekter og kunder i ulike stadier av kjøpesyklusen med litt forskjellige interesser, så en del av publikum vil aldri være klar til å reagere umiddelbart på hver handling. Selv om alle på din e-postliste er klare til handling, er dine anrop til handling ...

Redaktørens valg

Opprett en Pivot-tabell YTD-totalvisning for Excel-rapporten - dummies

Opprett en Pivot-tabell YTD-totalvisning for Excel-rapporten - dummies

En nyttig rapportvisning I et Excel-pivottabell er YTD-totalsvisningen. Noen ganger er det nyttig å fange et løp-total-visning for å analysere bevegelsen av tall på en årlig basis (YTD) basis. Denne figuren illustrerer et pivottabell som viser en løpende total omsetning per måned for hvert år. I denne visningen er du ...

Opprett en pivottabel ved hjelp av Excels interne datamodell - dummies

Opprett en pivottabel ved hjelp av Excels interne datamodell - dummies

I enkelte tilfeller vil du kanskje opprett et pivottabell fra grunnen ved hjelp av Excels eksisterende interne datamodell som kildedata. Her er trinnene for å gjøre det: Velg Sett inn → PivotTable fra båndet. Dialogboksen Create PivotTable åpnes. Velg alternativet Bruk en ekstern datakilde, som vist, og klikk deretter på ...

Hvordan lage en standard snikker i Power Pivot - dummies

Hvordan lage en standard snikker i Power Pivot - dummies

Slicers tilbyr et brukervennlig grensesnitt med som du kan filtrere en Power Pivot pivottabell. Det er på tide å lage din første slicer. Bare følg disse trinnene:

Redaktørens valg

Alarmhendelsen i GameMaker: Studio-dummies

Alarmhendelsen i GameMaker: Studio-dummies

Alarmer er utmerket for når du vil ha tid Handlinger i din spill i GameMaker: Studio. For eksempel, hvis du vil at spilleren bare skal skyte kuler en gang hvert annet sekund, kan du sette en alarm for det. Hvis du vil når nye fiendtlige fly vises, kan du sette en alarm for det ...

Flytt retningsaktive handlinger i GameMaker: Studio - dummies

Flytt retningsaktive handlinger i GameMaker: Studio - dummies

I GameMaker: Studio, Flytt-fanen er den første kategorien i vinduet Objektegenskaper. Her er en liste over hver av handlingene du kan tilordne objektene. I følgende definisjoner brukes begrepet Instance for å referere til hva handlingen påvirker. Men du konfigurerer handlingen i objektet ...

Andre hendelser i GameMaker: Studio - dummies

Andre hendelser i GameMaker: Studio - dummies

I GameMaker: Studio, Andre hendelser er de som ikke anses verdige av sitt eget sted på menyen Event. Disse andre hendelsene kan være ganske kjempebra. Menyelementene er ganske mye selvforklarende, så det er ikke nødvendig med detaljer her. For fullstendige beskrivelser av hver av disse elementene, kan du alltid trykke F1 i GameMaker og ...