Muutama kysymys PHP:n turvallisuudesta, SQL injektiot ja mitä näitä onkin.
1) Kannattaako data varmistaa vaarattomaksi sisäänkirjoittamisen yhteydessä ennen tietokantaan tallettamista vai vasta tietokannasta käytettäessä? Yksi testailija kommentoi, että ei tarkisteta tietokantaan kirjoitettaessa. Miksi, jos tulostus- ja muita käyttökohteita on lukemattomia. Paitsi että näkisi kuka kirjoittelee puuta heinää tai yrittää jotakin kyseenalaista.
2) Mikä olisi selkein tapa varmistaa, että merkkijono on turvallisesti tietokantaan kirjoitettavissa? Olen löytänyt monenlaisia esimerkkejä, mutta en ole varma, mikä olisi paras.
3) Mitä muita asioita liittyy PHP:n turvallisuuteen. Käytössä on viimeisin versio. Tarkoitus on tehdä harrastukseen liittyvien havaintojen kirjaamiseen liittyvä tietokanta, josta saa erilaisia tulosteita. Käyttäjät kirjautuvat ja salasanojen kryptaus on tehty. Haluan varmistaa turvallisuus asioita ennen julkaisemista. Sovellus on sinänsä aika yksinkertainen. Uuden tiedon kirjaus, itse kirjatun tiedon korjaus tai poisto ja erilaiset tulosteet.
Kiitos kommenteista.
PHP ja turvallisuus
6
1134
Vastaukset
Kaikki mitä HTTP:llä tulee sisään pitää tarkistaa. Sen lisäksi jos selain ajaa käyttöliittymäosaa, siinä sitten yleensä lisää tarkistuksia vaikka samoja tarkistettaisiin jo PHP:llä.
Eli tarkistus tulisi silloin ennen kuin kantaan menee mitään. SQL injektio kun tarkoittaa sitä, että annetaan vaikka käsky tietokannalle niin se pitää tarkastaa ettei siellä joku jekkuile laittamalla nimeksi ; DROP customers- Anonyymi
Kiitos vastauksesta!
Jos on vaikka muuttujassa $place tarkoitus kerätä tietokantaan paikkakunta. Miten se tarkastettaisiin ennen tietokantaan talletusta?
Numerotietoja ja päivämääriä ei tarvinne tarkistaa, kun muuta ei voi syöttää. Sähköpostiosoite ilmeisesti pitää tarkistaa, vaikka sekin vaatii jonkin [email protected] muotoisen merkkijonon.- Anonyymi
Paikkakunta valittaisiin käyttöliittymästä jostain listasta ja sama lista sitten backendin puolelle, että on sitä mitä olettaa olevankin.
Sähköpostiosoitteita voi tarkastaa regexillä: https://en.wikipedia.org/wiki/Regular_expression
Ihan kaikki käyttöliittymästä tulevat asiat pitää tarkistaa koska kaikki käyttöliittymästä lähtevät viestit ovat muokattavissa.
- Anonyymi
Lista oli hyvä ajatus, vaikka lisää ylläpitotyötä, varmistaa samalla ettei tule kirjoitusvirheitä. Muutenkin hyvä vinkki, Vielä kaipaan kuinka tarkistetaan vapaateksti, jolle on varattu 256 merkkiä pitkä merkkitila tietokannasta. Ääkköset täytyy sallia, samoin melkein kaikki ascii-merkit, ei siis vain kirjaimet ja numerot. < ja > sekä ; voisi olla esim kiellettyjä. Ehkä /-merkki pitäisi sallia. Jos siis tarkistetaan merkki kerrallaan? Vai onko joku muu tapa kätevämpi? Luin jostain htmlchr ...
- Anonyymi
Käy läpi silmukassa kaikki kielletyt merkit strposin avulla.
- Anonyymi
Ei vastausta. Voisiko joku laittaa vaikka linkin?
Ketjusta on poistettu 1 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Heikki Silvennoinen petti vaimoaan vuosien ajan
Viiden lapsen isä Heikki kehuu kirjassaan kuinka paljon on pettänyt vaimoaan vuosien varrella.2814702Miksi ihmeessä nainen seurustelit kanssani joskus
Olin ruma silloin ja nykyisin vielä rumempi En voi kuin miettiä että miksi Olitko vain rikki edellisestä suhteesta ja ha282508- 242181
Persut nimittivät kummeli-hahmon valtiosihteeriksi!
Persujen riveistä löytyi taas uusi törkyturpa valtiosihteeriksi! Jutun perusteella järjenjuoksu on kuin sketsihahmolla.932176Onko ministeri Juuso epäkelpo ministerin tehtäviensä hoitamiseen?
Eikö hänellä ole kompetenttia hoitaa sosiaali- ja terveysministetin toimialalle kuuluvia ministerin tehtäviä?1291817Sakarjan kirjan 6. luku
Jolla korva on, se kuulkoon. Sain profetian 22.4.2023. Sen sisältö oli seuraava: Suomeen tulee nälänhätä niin, että se261472- 161452
Kenen etua Stubb ajaa Euroopassa ilmoittaessaan olevansa enemmän Ruotsalainen
Tasavallan presidentti Alexander Stubb kertoi ensimmäisellä valtiovierailullaan Ruotsissa, että hän ei ole koskaan tunte3441430Avaa sydämesi mulle
❤ ❤❤ Tahdon pelkkää hyvää sulle Sillä ilmeisesti puhumalla Avoimesti välillämme Kaikki taas selviää Kerro kaikki, tahdo361367Elia tulee vielä
Johannes Kastaja oli Elia, mutta Jeesus sanoi, että Elia tulee vielä. Malakian kirjan profetia Eliasta toteutuu kokonaan351257