Ubuntu Suomen keskustelualueet

Ubuntun käyttö => Ohjelmointi, palvelimet ja muu edistyneempi käyttö => Aiheen aloitti: Mistofelees - 14.05.23 - klo:10.23

Otsikko: Maailmalle avoin portti
Kirjoitti: Mistofelees - 14.05.23 - klo:10.23
Miten hyökkääjä pystyy käyttämään hyväkseen jotain avointa TCP-porttia, jos sen taakse ei ole itse asennettu kuin ohjelma, joka odottaa dataa ulkoiselta laitteelta ?
Onko Linuxin rakenteessa jotain terminaaliohjelman kaltaista, joka vastaanottaisi komentoja kaukaa ?
Itsellä on nyt auki yksi portti, johon matkailuauton GPS-trakkeri lähettää sijaintitietojaan.
Otsikko: Vs: Maailmalle avoin portti
Kirjoitti: nm - 14.05.23 - klo:11.23
Miten hyökkääjä pystyy käyttämään hyväkseen jotain avointa TCP-porttia, jos sen taakse ei ole itse asennettu kuin ohjelma, joka odottaa dataa ulkoiselta laitteelta ?

Siten että porttia kuuntelevassa ohjelmassa on tietoturva-aukko, jonka kautta hyökkääjä pääsee suorittamaan koneella omaa koodiaan. Hyökkääjät käyttävät kuitenkin  yleensä automaattisia skriptejä, jotka yrittävät tunnistaa vastapuolen palvelun ja hyödyntää siinä olevia tunnettuja aukkoja. Jos kyseessä on itse koodattu ohjelma, joka ei käytä valmiita sovelluskehyksiä, se on aika varmasti reikäinen, mutta automaattiset hyökkäykset eivät välttämättä löydä aukkoja.
Otsikko: Vs: Maailmalle avoin portti
Kirjoitti: Mistofelees - 19.05.23 - klo:02.26
Jos käyttää vain valmiita Linuxin varusohjelmia, esim nc:tä portin kuuntelemiseen, ei ehkä ole mahdollista rakentaa yhtä reikäistä kuuntelujärjestelmää, kuin jos vääntäisi koko koodin omin käsin.
Tietenkin nc:täkin käyttäessä pitää huolehtia, ettei tulva kaada konetta, eli rajoittaa tulevan liikenteen määrää.
Otsikko: Vs: Maailmalle avoin portti
Kirjoitti: nm - 19.05.23 - klo:13.18
Jos käyttää vain valmiita Linuxin varusohjelmia, esim nc:tä portin kuuntelemiseen, ei ehkä ole mahdollista rakentaa yhtä reikäistä kuuntelujärjestelmää, kuin jos vääntäisi koko koodin omin käsin.

nc:tä tai vastaavia luotettavia valmiita palikoita käyttäessä vältyt protokollatason aukoilta. Yhtä ratkaisevaa on kuitenkin se, miten vastaanotettua dataa käsitellään. Perinteinen mutta edelleen tyypillinen esimerkki monen kerroksen läpi tunkeutuvista hyökkäyksistä ovat SQL-injektiot. Eli jos epäluotettavasta lähteestä tulevaa dataa ei käsitellä huolellisesti, on suuri riski, että se aiheuttaa ongelmia jollain abstraktiotasolla.
Otsikko: Vs: Maailmalle avoin portti
Kirjoitti: teele - 21.05.23 - klo:10.29

Aukoista on varoitettu, mutta omia pikku kokeiluja varten olisi mukava saada käsitys siitä, mitä vaaroja on, jos tekee oman ohjelman esimerkiksi c++ :lla niin, että se lukee vaikka 100 merkkiä ja valvoo merkkien lukumäärää omalla laskurilla.

Vaikuttaisiko kieli aukkoisuuteen, esimerkiksi 100 merkkiä taulukkoon pythonilla tai php:llä.
Otsikko: Vs: Maailmalle avoin portti
Kirjoitti: Jere Sumell - 21.05.23 - klo:21.18
Itselläni on sellainen käsitys, että ohjelmointikielestä ole kiinni, jos ohjelmoija jättänyt jotain huomioimatta. Joissain ohjelmointikielissä, esim PHP:ssä jotkin kehykset ovat silmämllä pitäen turvallisuusnäkökulmasta, että kaikkea ei tarvitse alusta lähtien itse ohjelmoida. Tällainen käsitys itsellä jäänyt.

En tiedä miten C++ soveltuu nykypäivän verkkomaailmaan, varmaan sillekin on tarjolla jotain kirjastoja tms, joissa on verkkoympäristöä silmällä pitäen ohjelmoijalle välineet,mutta Python nyt ainakin on trendaava kuin tehty verkkomaailmaan. Tuppaa data Python-taulukkoon.