Kuinka selvitetään, sisältääkö tiedosto tietyn sanan?

Wish I knew

Miten saa PHP:llä selvitettyä, löytyykö tietystä tiedostosta jokin tietty sana? Vai voiko edes mitenkään?

Luulin, että moinen olis helposti netistä löytyvää peruskamaa, mutta eipä ole Googlekaan auttanut - kaikenlaisia muita tiedoston käsittelyyn liittyviä juttuja kyllä löytyy. Tai sitten en ole vaan osannut etsiä oikein... aloittelija kun olen.

Jos kysymykseni on epäselvä tai epätarkka, niin tässä vähän sitä pätkää, millaisen koodin yhteyteen tollasta tarttisin:

$nimimerkki = $_POST["nimimerkki"];
$salasana = $_POST["salasana"];
$etsittava = "";

Mitäs sitten? Osaisin ehkä netistä löytyvien oppaiden avulla avata ja sulkea tiedoston, mutta sen selvittäminen, löytyykö tuo tietty merkkipätkä eli $etsittava sieltä tiedostosta... en ymmärrä.

Sit jotain:

if(...sana löytyy. Tuleekohan tähän jotain "true"-hommeleita?);
{
echo "Tervetuloa, " . $nimimerkki . "!";
}
else
{
echo "Nimimerkki tai salasana on väärin.";
}

Jos on niin, että menetelmäni salasanojen tallentamiseen on jotenkin väärä, niin saa toki siitä huomauttaa, mutta toivoisin silti, että kysymykseeni vastattaisiin. Pääasiallinen tarkoitukseni ei ole tehdä sivua, jolle tulisi käyttäjiä, sillä mulla ei oo ees sivuja netissä missään, vaan katselen noita kokeilujani omalla koneella. Toki haluan oppia oikeimmat menetelmät, mutta jos virheitä pelkää, ei edisty koskaan. :/

Eli miten - jos mitenkään - selvitetään, löytyykö tietty sana/merkkijono tms. jostakin tietystä tiedostosta?

7

379

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • sdfsdfsd
      • I almost know

        Kiitos kovasti! Noilla se varmaan onnistuu.


    • 234234234

      Tuo sinun koodisi näyttää tietoturvaa ajatellen olevan täysin riittämätön ja huono.

      Ensinnäkin ohjelman pitäisi edes jollain käsitellä käyttäjiltä tulevat syötteet varmistuakseen siitä ettei syöte ole virheellistä tai haitallista.

      Toiseksi salasanat tulisi olla tietokannassa tai vastaavassa hashattyinä vaikkapa SHA1 algoritmilla. PHP:ssä on suorat funktiot hashien totetukseen.

      • Pakollinen nikki

        Kiitos molemmille tiedoista!

        Noh, kunhan kokeilen ensin noita perusjuttuja, niin sitten voi keskittyä noihin tietoturvajuttuihin enemmän. En tajua niistä vielä mitään.

        Salasanat voi kuitenkin kai olla tiedostossa, mutta vaan jotenkin muokattuna, vai? En tajunnut mitään tuosta tietokannasta, joten koitan vältellä sitä toistaiseksi, jos se ei ole välttämättömyys. :D Koitin ladata koneelle jotain MySQL-hommelia, mutta ei onnistunut... *turhautuminen*


      • sdfsfsf
        Pakollinen nikki kirjoitti:

        Kiitos molemmille tiedoista!

        Noh, kunhan kokeilen ensin noita perusjuttuja, niin sitten voi keskittyä noihin tietoturvajuttuihin enemmän. En tajua niistä vielä mitään.

        Salasanat voi kuitenkin kai olla tiedostossa, mutta vaan jotenkin muokattuna, vai? En tajunnut mitään tuosta tietokannasta, joten koitan vältellä sitä toistaiseksi, jos se ei ole välttämättömyys. :D Koitin ladata koneelle jotain MySQL-hommelia, mutta ei onnistunut... *turhautuminen*

        Salasanat voi olla siis tiedostossakin. Tiedostoa voi itsessään käyttää "tietokantana".

        Ja salasanat kannattaa pitää tiedostossa "hasheina".

        kokeiles leikkiä vaikka sha1(); funktiolla

        esimerkki.

        echo sha1("salasana");

        Tuon pitäisi tulostaa sanan "salasana" hashattynä SHA1 algoritmillä. Myöhemmin voit sitten vertailla käyttäjän syöttämää salasanaa tietokannasta löytyvään SHA1 hashiin.

        Lisäksi hashiin kannattaa lisätä "suola". Eli salasanan eteen lisätään randomi tai koodaajan määrittämä merkkijono. Tällöin hashin selvittäminen salasana kräkkereillä vaikeutuu huomattavasti.


      • Roskapostirobotti2
        sdfsfsf kirjoitti:

        Salasanat voi olla siis tiedostossakin. Tiedostoa voi itsessään käyttää "tietokantana".

        Ja salasanat kannattaa pitää tiedostossa "hasheina".

        kokeiles leikkiä vaikka sha1(); funktiolla

        esimerkki.

        echo sha1("salasana");

        Tuon pitäisi tulostaa sanan "salasana" hashattynä SHA1 algoritmillä. Myöhemmin voit sitten vertailla käyttäjän syöttämää salasanaa tietokannasta löytyvään SHA1 hashiin.

        Lisäksi hashiin kannattaa lisätä "suola". Eli salasanan eteen lisätään randomi tai koodaajan määrittämä merkkijono. Tällöin hashin selvittäminen salasana kräkkereillä vaikeutuu huomattavasti.

        Kiitos valaisusta! Nyt tajuan, mitä se suolaaminenkin tarkoittaa!

        Olen tässä leikiskellyt md5:llä ja tuolla sha1:llä, onkohan jälkimmäinen parempi... Pidemmältä ainakin näyttää.


      • sdfsfsdf
        Roskapostirobotti2 kirjoitti:

        Kiitos valaisusta! Nyt tajuan, mitä se suolaaminenkin tarkoittaa!

        Olen tässä leikiskellyt md5:llä ja tuolla sha1:llä, onkohan jälkimmäinen parempi... Pidemmältä ainakin näyttää.

        Sha1 on selvästi parempi. Nykyään löytyy jo pilvin pimein muutenki MD5 cracker sivuja joilla on järjettömät tietokannat md5 hasheista.

        Itse käyttäisin sivulla ehkä jotain vielä tehokkaampaa kuin SHA1


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Mitkä asiat

      tekevät vaikeaksi kohdata kaivattusi?
      Ikävä
      74
      1044
    2. 65
      913
    3. Miltä se tuntuu

      Miltä se tuntuu havahtua, että on ollut ihmistä kohtaan, joka on rakastanut ja varjellut, täysi m*lkku? Vai havahtuuko s
      Ikävä
      104
      898
    4. Rakas

      Eihän se tietysti minulle kuulu, mutta missä sinä olet? 😠
      Ikävä
      47
      882
    5. Pidit itseäsi liian

      Vanhana minulle? Niinkö?
      Ikävä
      49
      811
    6. Haluaisitko oikeasti

      Vakavampaa välillemme vai tämäkö riittää
      Ikävä
      49
      684
    7. En mahda sille mitään

      Olet ihanin ja tykkään sinusta todella paljon.
      Ikävä
      31
      649
    8. Joko olet luovuttanut

      Mun suhteen?
      Ikävä
      50
      580
    9. Mitä se olisi

      Jos sinä mies saisit sanoa kaivatullesi mitä vain juuri nyt. Ilman mitään seuraamuksia yms. Niin mitä sanoisit?
      Ikävä
      34
      577
    10. Sinunkin pitää jättää

      Se kaivattusi rauhaan.
      Ikävä
      38
      526
    Aihe