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
1194
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
Ja taas ammuttu kokkolassa
Kokkolaisilta pitäisi kerätä pois kaikki ampumaset, keittiöveitset ja kaikki mikä vähänkään paukku ja on terävä.726348- 1385772
Helena Koivu on äiti
Mitä hyötyä on Mikko Koivulla kohdella LASTENSA äitiä huonosti . Vie lapset tutuista ympyröistä pois . Lasten kodista.4863654Ovatko naiset lopettaneet sen vähäisenkin vaivannäön Tinderissa?
Meinaan vaan profiileja selatessa nykyään valtaosalla ei ole minkäänlaista kirjoitettua tekstiä siellä. Juuri ja juuri s1202059- 391361
Suomi vietiin Natoon väärin perustein. Viides artikla on hölynpölyä. Yksin jäämme.
Kuka vielä uskoo, että viides artikla takaa Suomelle avun, jos Suomeen hyökätään. Liikuttavasti täällä on uskottu ja ved4021345- 731173
Sydämeni on sinun luona
Koko ajan. Oli ympärilläni ketä oli niin sinä olet vain ajatuksissa ja tunteissa. En halua muiden kosketusta kuin sinun471034Trump ja Venäjä
Huomasitteko muuten... Käytännössä ainoat valtiot, joille Trump EI eilen asettanut typeriä tariffejaan, olivat Venäjä ja110952Jatkuva stressitila
On sinun vuoksesi kun en tiedä missä mennään mutta tunteeni tiedän ainoastaan56950