21. marts 2004 - 12:55Der er
19 kommentarer og 3 løsninger
Brute Force angreb?
Hejsa.
Jeg kører en MSSQL 2000 server på en Win2k3 server.
Hvis jeg kigger i event loggen kan jeg se adskillige hundrede events med ca. et sekunds mellemrum imellem:
Event Type: Information Event Source: MSSQLSERVER Event Category: (4) Event ID: 17055 Date: 21-03-2004 Time: 06:33:29 User: N/A Computer: WEB1 Description: 18456 : Login failed for user 'sa'.
--------
Jeg har tjekket min SQL Server Agent service, den bruger ikke SQL Server Authentication, men Windows Authentication, så det burde ikke være den der giver problemer.
Events'ne er sket på et tidspunkt på døgnet, hvor der har været så godt som ingen trafik på serveren, så det er heller ikke web aktivitet der har forårsaget det.
Det kan sagtens være et bruteforce angreb. Lidt afhængig af hvad din forntend giver at muligheder og hvad en hacker kan forvente at finde i din database, kan man så sige noget om hvor sandsyneligt det er
Min frontend er så godt som ikke-eksisterende. P.t. kører der kun et enkelt offentligt tilgængeligt website, og serveren har ikke kørt mere end 5 dage. Så det undrer mig en del, hvis der "allerede" nu skulle være et angreb på den.
arne_v Ja, den er åben på port 1433, jeg har overvejet at flytte den til en anden port. Umiddelbart har jeg brug for at den er åben udadtil, da der er nogle udviklere som skal kunne arbejde med databasen via enterprise manager, og de har ikke adgang til serveren selv.
Jeg har heller ikke mulighed for at oprette en VPN forbindelse, og på den måde undgå direkte adgang udefra.
2004-03-19 19:36:52.39 logon Login failed for user 'sa'. 2004-03-19 19:36:52.42 logon Login failed for user 'sa'. 2004-03-19 19:36:52.92 logon Login failed for user 'sa'. 2004-03-19 19:36:53.32 logon Login failed for user 'sa'. 2004-03-19 19:36:53.37 logon Login failed for user 'sa'. 2004-03-19 19:36:53.93 logon Login failed for user 'sa'. 2004-03-19 19:36:54.09 logon Login failed for user 'sa'. 2004-03-19 19:36:55.15 logon Login failed for user 'sa'. 2004-03-19 19:36:55.70 logon Login failed for user 'sa'. 2004-03-19 19:36:55.71 logon Login failed for user 'sa'. 2004-03-19 19:36:55.75 logon Login failed for user 'sa'. 2004-03-19 19:36:56.96 logon Login failed for user 'sa'. 2004-03-19 19:36:57.15 logon Login failed for user 'sa'. 2004-03-19 19:36:57.34 logon Login failed for user 'sa'. 2004-03-19 19:36:57.48 logon Login failed for user 'sa'. 2004-03-19 19:36:58.07 logon Login failed for user 'sa'. 2004-03-19 19:36:59.40 logon Login failed for user 'sa'. 2004-03-19 19:37:02.28 logon Login failed for user 'sa'. 2004-03-19 19:37:04.84 logon Login failed for user 'sa'. 2004-03-19 19:37:29.31 logon Login failed for user 'sa'. 2004-03-19 19:37:29.34 logon Login failed for user 'sa'. 2004-03-19 19:37:34.07 logon Login failed for user 'sa'. 2004-03-19 19:37:34.21 logon Login failed for user 'sa'. 2004-03-19 19:37:34.25 logon Login failed for user 'sa'. 2004-03-19 19:37:35.12 logon Login failed for user 'sa'. 2004-03-19 19:37:35.29 logon Login failed for user 'sa'. 2004-03-19 19:37:35.31 logon Login failed for user 'sa'. 2004-03-19 19:37:35.46 logon Login failed for user 'sa'. 2004-03-19 19:37:35.50 logon Login failed for user 'sa'. 2004-03-19 19:37:36.17 logon Login failed for user 'sa'. 2004-03-19 19:37:37.09 logon Login failed for user 'sa'. 2004-03-19 19:38:11.98 logon Login failed for user 'sa'. 2004-03-19 19:38:12.15 logon Login failed for user 'sa'. 2004-03-19 19:38:12.25 logon Login failed for user 'sql'. 2004-03-19 19:38:12.43 logon Login failed for user 'sql'. 2004-03-19 19:38:12.62 logon Login failed for user 'sql'. 2004-03-19 19:38:12.81 logon Login failed for user 'sql'. 2004-03-19 19:38:13.81 logon Login failed for user 'sql'. 2004-03-19 19:38:13.89 logon Login failed for user 'sql'. 2004-03-19 19:38:15.03 logon Login failed for user 'sql'. 2004-03-19 19:38:16.29 logon Login failed for user 'sql'. 2004-03-19 19:38:17.15 logon Login failed for user 'sql'. 2004-03-19 19:38:30.23 logon Login failed for user 'sql'. 2004-03-19 19:38:32.31 logon Login failed for user 'sql'. 2004-03-19 19:38:53.92 logon Login failed for user 'sql'. 2004-03-19 19:38:54.39 logon Login failed for user 'sql'. 2004-03-19 19:38:54.56 logon Login failed for user 'sql'. 2004-03-19 19:38:54.67 logon Login failed for user 'sql'. 2004-03-19 19:38:54.98 logon Login failed for user 'sql'. 2004-03-19 19:38:55.06 logon Login failed for user 'sql'. 2004-03-19 19:38:56.64 logon Login failed for user 'sql'. 2004-03-19 19:38:56.81 logon Login failed for user 'sql'. 2004-03-19 19:38:57.53 logon Login failed for user 'sql'. 2004-03-19 19:38:57.96 logon Login failed for user 'sql'. 2004-03-19 19:38:58.37 logon Login failed for user 'sql'. 2004-03-19 19:38:58.73 logon Login failed for user 'sql'. 2004-03-19 19:39:00.12 logon Login failed for user 'sql'. 2004-03-19 19:39:03.35 logon Login failed for user 'sql'. 2004-03-19 19:39:03.82 logon Login failed for user 'sql'. 2004-03-19 19:39:36.21 logon Login failed for user 'sql'. 2004-03-19 19:39:36.42 logon Login failed for user 'sql'. 2004-03-19 19:39:36.57 logon Login failed for user 'sql'. 2004-03-19 19:39:36.79 logon Login failed for user 'sql'. 2004-03-19 19:39:37.03 logon Login failed for user 'sql'. 2004-03-19 19:39:37.17 logon Login failed for user 'sql'. 2004-03-19 19:39:37.95 logon Login failed for user 'database'. 2004-03-19 19:39:38.48 logon Login failed for user 'database'. 2004-03-19 19:39:38.65 logon Login failed for user 'sql'. 2004-03-19 19:39:39.35 logon Login failed for user 'database'. 2004-03-19 19:39:40.07 logon Login failed for user 'database'. 2004-03-19 19:39:41.14 logon Login failed for user 'database'. 2004-03-19 19:39:56.23 logon Login failed for user 'database'. 2004-03-19 19:40:14.12 logon Login failed for user 'database'. 2004-03-19 19:40:14.92 logon Login failed for user 'database'. 2004-03-19 19:40:18.25 logon Login failed for user 'database'. 2004-03-19 19:40:18.34 logon Login failed for user 'database'. 2004-03-19 19:40:18.46 logon Login failed for user 'database'. 2004-03-19 19:40:18.56 logon Login failed for user 'database'. 2004-03-19 19:40:18.62 logon Login failed for user 'database'. 2004-03-19 19:40:19.09 logon Login failed for user 'database'. 2004-03-19 19:40:19.67 logon Login failed for user 'database'. 2004-03-19 19:40:19.73 logon Login failed for user 'database'. 2004-03-19 19:40:19.74 logon Login failed for user 'database'. 2004-03-19 19:40:21.28 logon Login failed for user 'database'. 2004-03-19 19:40:33.28 logon Login failed for user 'database'. 2004-03-19 19:40:38.37 logon Login failed for user 'database'. 2004-03-19 19:40:50.21 logon Login failed for user 'database'. 2004-03-19 19:40:50.56 logon Login failed for user 'database'. 2004-03-19 19:40:57.07 logon Login failed for user 'database'. 2004-03-19 19:40:57.35 logon Login failed for user 'database'. 2004-03-19 19:40:57.50 logon Login failed for user 'database'. 2004-03-19 19:40:57.57 logon Login failed for user 'database'. 2004-03-19 19:40:57.76 logon Login failed for user 'database'. 2004-03-19 19:40:57.81 logon Login failed for user 'database'. 2004-03-19 19:40:59.07 logon Login failed for user 'database'. 2004-03-19 19:41:00.34 logon Login failed for user 'database'. 2004-03-19 19:41:01.40 logon Login failed for user 'database'. 2004-03-19 19:41:20.32 logon Login failed for user 'database'. 2004-03-19 19:41:20.89 logon Login failed for user 'database'. 2004-03-19 19:41:33.09 logon Login failed for user 'server'. 2004-03-19 19:41:33.18 logon Login failed for user 'server'. 2004-03-19 19:41:33.24 logon Login failed for user 'server'. 2004-03-19 19:41:33.26 logon Login failed for user 'server'. 2004-03-19 19:41:33.37 logon Login failed for user 'server'. 2004-03-19 19:41:34.03 logon Login failed for user 'server'. 2004-03-19 19:41:34.50 logon Login failed for user 'server'. 2004-03-19 19:41:34.53 logon Login failed for user 'server'. 2004-03-19 19:41:34.54 logon Login failed for user 'server'. 2004-03-19 19:41:34.59 logon Login failed for user 'server'. 2004-03-19 19:41:36.00 logon Login failed for user 'server'. 2004-03-19 19:41:36.65 logon Login failed for user 'server'. 2004-03-19 19:41:36.78 logon Login failed for user 'server'. 2004-03-19 19:41:37.32 logon Login failed for user 'server'. 2004-03-19 19:41:41.81 logon Login failed for user 'server'. 2004-03-19 19:41:42.46 logon Login failed for user 'server'. 2004-03-19 19:42:02.84 logon Login failed for user 'server'. 2004-03-19 19:42:07.81 logon Login failed for user 'server'. 2004-03-19 19:42:08.23 logon Login failed for user 'server'. 2004-03-19 19:42:09.20 logon Login failed for user 'server'. 2004-03-19 19:42:14.93 logon Login failed for user 'server'. 2004-03-19 19:42:15.06 logon Login failed for user 'server'. 2004-03-19 19:42:15.10 logon Login failed for user 'server'. 2004-03-19 19:42:15.35 logon Login failed for user 'server'. 2004-03-19 19:42:15.50 logon Login failed for user 'server'. 2004-03-19 19:42:15.62 logon Login failed for user 'server'. 2004-03-19 19:42:15.78 logon Login failed for user 'server'. 2004-03-19 19:42:15.82 logon Login failed for user 'server'. 2004-03-19 19:42:16.82 logon Login failed for user 'server'. 2004-03-19 19:42:17.40 logon Login failed for user 'server'. 2004-03-19 19:42:17.42 logon Login failed for user 'server'. 2004-03-19 19:42:18.35 logon Login failed for user 'server'. 2004-03-19 19:42:44.48 logon Login failed for user 'server'. 2004-03-19 19:42:44.56 logon Login failed for user 'admin'. 2004-03-19 19:42:44.85 logon Login failed for user 'admin'. 2004-03-19 19:42:46.40 logon Login failed for user 'admin'. 2004-03-19 19:42:46.84 logon Login failed for user 'admin'. 2004-03-19 19:42:46.93 logon Login failed for user 'admin'. 2004-03-19 19:42:47.03 logon Login failed for user 'admin'. 2004-03-19 19:42:47.46 logon Login failed for user 'admin'. 2004-03-19 19:42:47.92 logon Login failed for user 'admin'. 2004-03-19 19:42:49.54 logon Login failed for user 'admin'. 2004-03-19 19:42:49.95 logon Login failed for user 'admin'. 2004-03-19 19:42:50.98 logon Login failed for user 'admin'. 2004-03-19 19:43:27.18 logon Login failed for user 'admin'. 2004-03-19 19:43:27.73 logon Login failed for user 'admin'. 2004-03-19 19:43:27.75 logon Login failed for user 'admin'. 2004-03-19 19:43:27.78 logon Login failed for user 'admin'. 2004-03-19 19:43:27.90 logon Login failed for user 'admin'. 2004-03-19 19:43:28.34 logon Login failed for user 'admin'. 2004-03-19 19:43:29.50 logon Login failed for user 'admin'. 2004-03-19 19:43:29.67 logon Login failed for user 'admin'. 2004-03-19 19:43:30.00 logon Login failed for user 'admin'. 2004-03-19 19:43:30.04 logon Login failed for user 'admin'. 2004-03-19 19:43:30.07 logon Login failed for user 'admin'. 2004-03-19 19:43:30.90 logon Login failed for user 'admin'. 2004-03-19 19:43:31.04 logon Login failed for user 'admin'. 2004-03-19 19:43:31.65 logon Login failed for user 'admin'. 2004-03-19 19:43:31.70 logon Login failed for user 'admin'. 2004-03-19 19:43:31.71 logon Login failed for user 'admin'. 2004-03-19 19:43:31.98 logon Login failed for user 'admin'. 2004-03-19 19:43:32.20 logon Login failed for user 'admin'. 2004-03-19 19:43:32.68 logon Login failed for user 'admin'. 2004-03-19 19:43:32.70 logon Login failed for user 'admin'. 2004-03-19 19:43:33.67 logon Login failed for user 'admin'. 2004-03-19 19:44:09.31 logon Login failed for user 'admin'. 2004-03-19 19:44:09.85 logon Login failed for user 'root'. 2004-03-19 19:44:10.34 logon Login failed for user 'root'. 2004-03-19 19:44:10.35 logon Login failed for user 'root'. 2004-03-19 19:44:10.84 logon Login failed for user 'root'. 2004-03-19 19:44:10.87 logon Login failed for user 'root'. 2004-03-19 19:44:11.01 logon Login failed for user 'root'. 2004-03-19 19:44:12.04 logon Login failed for user 'root'. 2004-03-19 19:44:12.07 logon Login failed for user 'root'. 2004-03-19 19:44:12.09 logon Login failed for user 'root'. 2004-03-19 19:44:12.40 logon Login failed for user 'root'. 2004-03-19 19:44:12.53 logon Login failed for user 'root'. 2004-03-19 19:44:13.62 logon Login failed for user 'root'. 2004-03-19 19:44:13.81 logon Login failed for user 'root'. 2004-03-19 19:44:13.93 logon Login failed for user 'root'. 2004-03-19 19:44:14.82 logon Login failed for user 'root'. 2004-03-19 19:44:52.12 logon Login failed for user 'root'. 2004-03-19 19:44:52.34 logon Login failed for user 'root'. 2004-03-19 19:44:52.53 logon Login failed for user 'root'. 2004-03-19 19:44:52.57 logon Login failed for user 'root'. 2004-03-19 19:44:52.67 logon Login failed for user 'root'. 2004-03-19 19:44:54.06 logon Login failed for user 'root'. 2004-03-19 19:44:54.29 logon Login failed for user 'root'. 2004-03-19 19:44:54.81 logon Login failed for user 'root'. 2004-03-19 19:44:55.56 logon Login failed for user 'root'. 2004-03-19 19:44:56.31 logon Login failed for user 'root'. 2004-03-19 19:44:56.85 logon Login failed for user 'root'. 2004-03-19 19:44:56.87 logon Login failed for user 'root'. 2004-03-19 19:44:57.35 logon Login failed for user 'root'. 2004-03-19 19:44:57.43 logon Login failed for user 'root'. 2004-03-19 19:44:57.54 logon Login failed for user 'root'. 2004-03-19 19:44:57.85 logon Login failed for user 'root'. 2004-03-19 19:45:28.78 logon Login failed for user 'root'. 2004-03-19 19:45:49.92 logon Login failed for user 'root'. 2004-03-19 19:45:50.06 logon Login failed for user 'user'. 2004-03-19 19:46:53.56 logon Login failed for user 'user'. 2004-03-19 19:46:54.56 logon Login failed for user 'user'. 2004-03-19 19:47:10.31 logon Login failed for user 'user'. 2004-03-19 19:47:10.37 logon Login failed for user 'user'. 2004-03-19 19:47:10.53 logon Login failed for user 'user'. 2004-03-19 19:47:10.82 logon Login failed for user 'user'. 2004-03-19 19:47:10.92 logon Login failed for user 'user'. 2004-03-19 19:47:11.28 logon Login failed for user 'user'. 2004-03-19 19:47:31.01 logon Login failed for user 'user'. 2004-03-19 19:47:31.07 logon Login failed for user 'user'. 2004-03-19 19:47:32.64 logon Login failed for user 'user'. 2004-03-19 19:47:52.28 logon Login failed for user 'user'. 2004-03-19 19:47:52.31 logon Login failed for user 'user'. 2004-03-19 19:48:10.71 logon Login failed for user 'user'. 2004-03-19 19:48:11.12 logon Login failed for user 'user'. 2004-03-19 19:48:11.17 logon Login failed for user 'user'. 2004-03-19 19:48:11.29 logon Login failed for user 'user'. 2004-03-19 19:48:11.71 logon Login failed for user 'user'. 2004-03-19 19:48:11.87 logon Login failed for user 'user'. 2004-03-19 19:48:12.65 logon Login failed for user 'user'. 2004-03-19 19:48:13.17 logon Login failed for user 'user'. 2004-03-19 19:48:13.37 logon Login failed for user 'user'. 2004-03-19 19:48:15.06 logon Login failed for user 'user'. 2004-03-19 19:48:44.87 logon Login failed for user 'user'. 2004-03-19 19:48:44.93 logon Login failed for user 'user'. 2004-03-19 19:48:44.96 logon Login failed for user 'user'. 2004-03-19 19:48:45.10 logon Login failed for user 'user'. 2004-03-19 19:48:45.73 logon Login failed for user 'user'. 2004-03-19 19:49:02.84 logon Login failed for user 'user'. 2004-03-19 19:49:03.14 logon Login failed for user 'user'. 2004-03-19 19:49:03.18 logon Login failed for user 'user'. 2004-03-19 19:49:03.28 logon Login failed for user 'user'.
Bemærk at jeg kun har brugeren "sa" oprettet, ingen af de andre eksisteret i databasen.
Og så fortsætter den ellers sådan:
2004-03-20 23:42:13.63 logon Login failed for user 'sa'. 2004-03-20 23:42:14.71 logon Login failed for user 'sa'. 2004-03-20 23:42:15.78 logon Login failed for user 'sa'. 2004-03-20 23:42:16.84 logon Login failed for user 'sa'. 2004-03-20 23:42:17.90 logon Login failed for user 'sa'. 2004-03-20 23:42:18.99 logon Login failed for user 'sa'. 2004-03-20 23:42:20.06 logon Login failed for user 'sa'. 2004-03-20 23:42:21.13 logon Login failed for user 'sa'. 2004-03-20 23:42:22.40 logon Login failed for user 'sa'. 2004-03-20 23:42:23.46 logon Login failed for user 'sa'. 2004-03-20 23:42:24.54 logon Login failed for user 'sa'. 2004-03-20 23:42:25.59 logon Login failed for user 'sa'. 2004-03-20 23:42:26.92 logon Login failed for user 'sa'. 2004-03-20 23:42:27.99 logon Login failed for user 'sa'. 2004-03-20 23:42:29.07 logon Login failed for user 'sa'.
Fra kl. ca. 22 til ca. 06:50. Det lugter meget af et scriptet angreb synes jeg :/.
Ud over at flytte til en anden port end default, er der så noget jeg kan gøre for at undgå sådanne angreb? Jeg skal som sagt have mulighed for at tilgå serveren udefra. Kan i evt. anbefale nogle artikler der forklarer hvorledes jeg tillader adgang til porten, fra kun nogle forudbestemte IP'er?
Jeg ved godt det ikke er nogen særligt effektiv foranstaltning, men hvad andet kan jeg gøre? Jeg har brug for at folk udefra kan forbinde til den i forbindelse med udvikling. Jeg kunne, som jeg foreslå, sætte ip restriktioner på, det ville vel gøre det rimeligt sikkert?
Check lige min artikel om basal sikkerhed på sql server. Du skal sørge for at PUBLIC ikke har ret til at udføre diverse sp'ere - bare for en sikkerheds skyld. Alle konti du ikke benytter aktivt (og man bør aldrig benytte SA :-) bør du tilføje et ; i adgangskoden.
I øvrigt - hvis enterprise manager er sat til at vise connection info så får man tilsvarende billede i loggen. Check options for EM og slå Poll Server fra. Bed også dine kunder om det samme.
arne_v> EM benytter den aktuelle brugers brugernavn - dvs. åbner man EM vil den forsøge at polle alle registerede servere med aktuelle brugernavn. Har man mange forskellige kunder der gør det - så vil man få mange forskellige brugernavne i loggen.
Umiddelbart tror jeg heller ikke det er EM - men billedet er det samme i loggen, og det kan skjule de "ægte" forsøg på at hacke sig ind.
Det er et scriptet angreb, der udnytter en gammel vulnerability, hvorunder nogle af de indbyggede og medfølgende konti på nogle installationer havde tomt password eller et kendt password sat som default.
Løsninger er følgende
Sørg for altid at have patchet din software, både styresystem og de efterfølgende applikationer.
Sørgfor at ændre ALLE default password og hvis det er muligt også brugernavne
Jeg ved ikke rigtig om jeg ser det som en løsning. Alle mine passwords er "stærke", og der er absolut ingen tomme passwords. Af samme grund er hackeren ikke kommet ind endnu. Jeg synes bare ikke det er særligt betryggende at vide at en hacker laver adskillige tusinde brute force forsøg imod min server, også selvom han ikke gætter passwordet.
Problemet er løs midlertidigt ved at skifte fra standard port, det må fungere indtil jeg får sat en VPN firewall op.
Desværre kan man jo ikke forhindre folk i at prøve brute force når databasen (eller hvilket som helst andet interface) er tilgængeligt - eneste er, at man kan gøre tiden for angrebet uacceptabel lang.
Du kan drille angriberen lidt ved at bruge nbtstat, netstat og arp til at finde hans IP og MAC adresse (eller mere sandsynligt, den maskine angriberen har overtaget). Så tracer du den retur og finder hans internet udbyder som du beder skride ind. Er ISP'en dansk kan du også muntre dig med en politianmeldelse.
Ikke at jeg vil opfordre til det, men hvis der er en mailserver på den maskine angrebet kommer fra, så kan du sende den en mail med et par gigabyte bilag samt en anmodning om at holde op...
En mere relevant tanke: Jeg mener at huske at sql server portens lokation "offentliggøres" via UDP på 1439: Lukker du for den port skal man kende sql serverens port for at komme i kontakt med den - og har du en instans skal man kende instans navnet. Der er lidt muligvis lidt at hente på den konto - men du må nok lige checke op på det via msdn eller sql servers hjemmesiden.
Mht points, denne gang siger jeg "næh tak". Mit bidrag har været begrænset, så det jeg har fået gennem læsningen af min artikel er nok. Men jeg vil da gerne høre en evt. fortsættelse på historien :-)
Port 1439 er også lukket, jeg har kun åbnet for portene 21, 80, (en speciel port til RD), (en speciel port til SQL). Altså burde det være rimeligt begrænset mht. porte man kan komme ind af.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.