SMBind-ng

Anno smbind-et használtam bind managementre, de eljárt fölötte az idő, az Ubuntu ki is dobta a repository-ból, ahogy illik.
Ha kellett bele 1-2 plusz feature, azt megcsináltam, de csak patkolás volt, és egyre jobban bosszantottak a hülyeségei (a könnyen kezelhetőség dacára is).
Amikor legutóbb a DNSSEC-et faragtam bele, akkor határoztam el, hogy alapjaitól írom újra az egészet, mert hatalmas böszmeségek voltak benne.
Már jó ideje készen van, de a körítést megcsinálni hozzá (induló DB dumpok, git repo, leírás, stb.) nem volt annyira szórakoztató, meg közbe is jöttek az ünnepek, szóval csúszott.
De itt van, és szerintem elég jó lett - ám nyilván vannak benne még mindig ordas böszmeségek, amik már vélhetően nekem köszönhetőek, mert az eredeti kód az kb. nulla.
Ellenben van benne néhány plusz feature, meg egyéb.
Szívesen venném a nagyérdemű figyelmét, amire a kipróbálás/tesztelés/hibajelzés fronton lenne nagy szükség, hogy a produktum életben maradjon.
A feature requesteknek és építő jellegű kritikának is örülnék!

Szerk:
Kicsit részletesebb leírás magyarul.

Hozzászólások

"No password traffic in HTTP channel (JS based encryption)"

Ezzel egy MITM-et még nem lehet meggátolni, akkor meg mi értelme van?

Annyi, hogy a jelszó még nem lesz ismert - több nem. A hash-sel sokra nem megy önmagában, mert kevés a boldogsághoz (bár még nem minden lehetőség van benne kiaknázva, lesz még benne 1-2 biztosíték, amit a jelszó kiszivárgása esetén nem lehetne érvényesíteni).

Szerk:
Amúgy csak kísérletképpen tettem bele, de maradt :)

Negatívum, hogy így viszont mindenképpen js képes böngésző kell hozzá - ezt sokan nem szeretik.
--
PtY - www.myonline.hu, www.westeros.hu

"Annyi, hogy a jelszó még nem lesz ismert - több nem"

Igen, erre gondoltam én is. :)

Ha nem sózod a hasht, akkor egy szivárványtáblával azért még könnyű visszafejteni egy valamilyen jelszót, ami könnyen lehet, hogy épp meg fog egyezni az eredetivel. Ha meg sózod, akkor a sót is le kell küldened a kliensnek, ami szintén nem tűnik túl jó ötletnek.

Szerver oldalon a hash-sel kezdesz még valamit, vagy direktben kerül összehasonlításra a db-ben tárolt értékkel? Csak mert ha utóbbi, akkor a megoldás pont olyan, mintha a plaintext jelszót tárolnád a db-ben.

Itt meg kell jegyeznem, hogy nem vagyok expert a témában, csak próbálom megérteni, hogy hogyan növeli a biztonságot a megoldás.

Keress egy működő és jó MD5 decryptert, mondok egy hash-t OK? Nincs benne semmi show ;)

"Csak mert ha utóbbi, akkor a megoldás pont olyan, mintha a plaintext jelszót tárolnád a db-ben."
Miért is? Fejtsd már ki, pls.
Azt is vedd figyelembe, hogy ez egy admin-tool, nem egy általánosan használatos app - aka webshop vagy mifene ;)

--
PtY - www.myonline.hu, www.westeros.hu

Arra a kérdésre nem válaszoltál, sózod-e a jelszót. Ha nem, akkor link. :)

Ha sózod, akkor azért nem rossz a helyzet, mert csak a brute force marad. Akkor csak az a kérdés, probléma-e azt önként kiadni (leküldeni a felhasználónak)? Illetve felhasználónként egyedi só van, vagy egy közös? Ha utóbbi, elég egyszer felépítenem a saját szivárványtáblámat ("brute force") és megtörtem az összes felhasználó jelszavát.

"Azt is vedd figyelembe, hogy ez egy admin-tool, nem egy általánosan használatos app - aka webshop vagy mifene ;)"

Oké, kevés felhasználód lesz, a tool nem tárol ellopásra érdemes adatokat, cserébe magasabb jogkörrel rendelkeznek. Gondold el, hogy egy cég/üzem/minisztérium DNS szervereibe piszkálnak bele illetéktelenek...

"Itt meg kell jegyeznem, hogy nem vagyok expert a témában, csak próbálom megérteni, hogy hogyan növeli a biztonságot a megoldás." - erre nem reagáltam.

De (szerintem) bármi, ami egy kicsivel is nehezebb, mint a pofonegyszerű, az jobb megoldás a pofonegyszerűnél.

--
PtY - www.myonline.hu, www.westeros.hu

Ha megszerzem a db-t, be tudok lépni bármelyik felhasználóval. Teljesen mindegy, hogy amit letárolsz az a jelszó, vagy a jelszóból számított érték, ha a szerver oldalon nem történik vele semmi. A sózásnak is ez az értelme, ha nem lehetne ellopni a db-t, teljesen felesleges lenne. Csak ezt az eshetőséget előre nem tudod kizárni. :)

Az előző postomban kaptál egy hash-t. Ha megmondod a jelszót, akkor be tudsz vele lépni (talán). Vagy brute-force-olhatsz a webfelületen, ahol recaptcha is van.
Az meg, hogy 'ha megszerzed a DB-t', már eleve utópia. Ahhoz ugyanis előbb meg kell szerezned a DB-t. Ez kissé hajaz arra az ismert viccre, hogy "tételezzük fel, a konzerv nyitva van"...
--
PtY - www.myonline.hu, www.westeros.hu

Az :)
Az információ hatalom. Ahol sok információ gyűlik össze egy helyen, az potenciális célpont - főleg, ha az információnak van piaci értéke.
Sokkal biztonságosabbnak tartok sok kis adathalmazt, mint egy nagyot. De ez már teljesen szubjektív vélemény.
--
PtY - www.myonline.hu, www.westeros.hu

Szerintem ragd fel github-ra.
--
"ssh in a for loop is not a solution" – Luke Kanies, Puppet developer

Ez igaz. :)
Úgy érted, a github alá be tudom kötni a saját publikus repository-m?
Fordítva tudom, hogy működik, csak nem akarok direktben a githubon keresztül csinálni mindent.

Update: le lehet scriptelni, nem nagy dolog. Ha esetleg van valakinek 'automatikus' megoldása, az lehet, hogy érdekelnek :)
--
PtY - www.myonline.hu, www.westeros.hu