Anmäl dig till Roborock Challenge!
Permalänk
Medlem

Skadlig kod på sidan jag gjort

Vid flera tillfällen har skadlig kod lagts in på de sidor jag gjrt. Har bland annat gjort denna www.untersteiner.se (gå ej in om ni inte har antivirus-program).

Från början poppade det upp spam och liknande men nu de senaste dagarna har även mitt antivirus varnat för Trojaner när jag går in på sidan.

Endast jag har tillgång till sidorna och koden (via ftp), har ni varit med om att er kod har blivit ändrad på liknande sätt, eller har någon aning om hur det kan ha gått till?

Detta har hänt på både *.asp och *.html-sidor.

Behöver hjälp omgående, tacksam för alla svar!

Visa signatur

AMD Ryzen 5 5700x3d | MSI B450M Mortar | Sapphire Radeon RX 7900 XT 20GB | Kingston 32GB - 3600MHz | FD Define C |

Permalänk
Medlem

Jag gissar att problemet är SQL injection. Vem som helst kan gå in och ändra via admin-gränssnittet och därifrån köra med lite script.

Permalänk
Avstängd

kör med en connector som fixar parametrar så slipper du sql injection

Visa signatur
Permalänk
Medlem

Är det du själv eller nån som roat sig med din sida? http://www.untersteiner.nu/hast.asp?id=420

Visa signatur

Min nästan hemliga sida Ancilla, face mea laganum!
Jag har sjukast drömmar. Det ligger i min natur att avsiktligt tolka felaktigheter fel.
0
0:17 < sphr> Raz^ jag spenderade 4h med att slita bort punghåren för hand

Permalänk
Medlem
Permalänk
Medlem

Ja, det är en sql injection du har.. Stäng av admin-inlogget (och alla andra ställen där du tar in input från användaren och på något vis använder i en sql-fråga) direkt skulle jag säga så det inte händer mer saker.

Permalänk
Medlem

Kolla t ex över en förfrågan som http://www.untersteiner.nu/hast.asp?id=421%20OR%201=1; (id=421 OR 1=1), tänk ut varför det blir som det blir och fixa det.

Förresten: Låt inte det här försigå, speciellt om där är skadlig kod. Ta ner sidan, begränsa åtkomst till ditt IP eller ställ åtminstone in lösenordsskydd i webbservern.

Permalänk
Medlem

Det blir ju inte bättre med id-numren om man säger så...
http://www.untersteiner.nu/hast.asp?id=422
http://www.untersteiner.nu/hast.asp?id=423

Anyway, fixa SQL-injectionsen du har på admin-interfacet. Vet inte hur det är med asp men i php finns det funktioner som hjälper till med det.

Permalänk
Citat:

Ursprungligen inskrivet av Raz
Är det du själv eller nån som roat sig med din sida? http://www.untersteiner.nu/hast.asp?id=420

'

Haha! Den där var bra!

Permalänk
Medlem

Verkar fortfarande inte vara någon som vill hjälpa grabben med ett vettigt svar. Det du råkat ut för är att du låter folk egentligen skriva vad de vill i dina forumlär utan att kontrollera data innan du kör dina databasanrop.

Detta gör att man kan injecera skadlig kod i dina databasanrop så kallade sql injections. På den här sidan kan du läsa mer om sql injections i samband med asp http://www.sitepoint.com/article/sql-injection-attacks-safe.

Enklaste sättet att säkra upp sidan är att alltid kontrollera vad användaren skriver in innan du kör databasanropen. Det kan vara en så enkel sak som att köra en isNumeric på fält som du vet alltid ska innehålla tal. Annars är det vanligt i asp att man skapar funktioner som tar bort de skadliga delarna i formulärdatat innan man anropar databasen.

Rensa bort escape characters. Den här funktionen brukar räcka långt för att förhindra sql injections

function stripQuotes(strWords) stripQuotes = replace(strWords, "'", "''") end function

Lägg den i toppen på din sida och varje gång du anropar forumlärdata som ska användas till förfrågningar till databasen kör du

Dim strUserName, strSQL strUserName = stripQuotes(Request.Form("username")) strSQL = "SELECT blabla FROM tblBlabla WHERE username='" & strUserName &"'"

Man kan även gå steget längre och göra en funktion som tar bort "farliga" ord från datat en enkel sådan funktion finns med på sidan 5 i länken ovanför.

Visa signatur
Permalänk
Medlem

Det är off-topic, men den här särskrivningen gjorde bara för ont.

Citat:

Ursprungligen inskrivet av xtermin8
databas anrop

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av jesper_o
Det är off-topic, men den här särskrivningen gjorde bara för ont.

Ja det tillförde fruktansvärt mycket men bara för att du inte ska bli störd när du läser en tråd som du egentligen inte tänker posta något vettigt i har jag varit snäll och editerat mitt inlägg för bara din skull då jag tror att trådskaparen heller ser ett inlägg med särskrivning än 10 off topic inlägg.

Med andra ord: *suck*

Visa signatur
Permalänk
Avstängd

Börjar man skriva egna metoder för sql paramterar är man fel ute.
Som jag sade ovan, använd en connector som stödjer sql parametrar.

Jag skriver det i C# då det var länge sedan jag pyssla med Vb6

string sql = "SELECT * FROM users WHERE userName=@userName"; cmd.Parameters.Add("@userName", SqlType.VarChar).Value = userName;

Visa signatur
Permalänk
Medlem

Om du använder php bör intval() räcka för att oskadliggöra sql-injektioner.

Permalänk
Citat:

Ursprungligen inskrivet av jesper_o
Om du använder php bör intval() räcka för att oskadliggöra sql-injektioner.

http://se.php.net/manual/sv/function.mysql-escape-string.php

Sen använder han ASP.

Permalänk
Medlem

Den här är väl rätt otrevlig också;
Finns till och med länkad på personalsidan..

Obs! Naket... ganska mycket hehe

http://www.untersteiner.nu/personal_info.asp?id=31

Mitt råd är att plocka ner sidan tills du täppt igen säkerhetshålen i databsen ..

Visa signatur

WS: Mac Studio M1 Max | 32 GB | 1TB | Mac OS
WS: Intel i5 12600K | 64 GB DDR4 @3600 Mhz | 2x1TB nvme 2x1TB SSD SATA | Windows 11 & Manjaro Linux
Bärbar: Macbook Pro 14" | M1 Pro | 16GB RAM | 512GB SSD | Mac OS
Servrar: Intel i7 10700K | 64 GB DDR4 @3600Mhz | 3 TB SSD + 22TB HDD | Unraid |
4x Raspberry pi 4b 8Gb | Dietpi |

Permalänk
Medlem

Här är ett inlägg som verkar visa hur det som CyberVillain pratar om fungerar i asp:
http://groups.google.com/group/microsoft.public.inetserver.as...

Permalänk
Medlem

Tack för all hjälp!

Har tills vidare plockat bort hela admin sidan, så man är tvungen att tanka ner databasfilen o uppdatera direkt i den istället.

Detta är väl säkert (tillsvidare iaf)?

// Tobbe

Visa signatur

AMD Ryzen 5 5700x3d | MSI B450M Mortar | Sapphire Radeon RX 7900 XT 20GB | Kingston 32GB - 3600MHz | FD Define C |