Järjestelmän salauskäytäntöjen täytäntöönpano

Fedorassa on käytäntö salaustekniikkaprotokollien, kuten TLS: n, käytölle, jotka ovat voimassa koko järjestelmässä. Jokainen Fedoraan lisättävä sovellus on tarkistettava käytäntöjen mukaiseksi. Tällä hetkellä käytännöt on rajoitettu suuriin kirjastoihin, kuten GnuTLS, OpenSSL, NSS, libkrb5, kieliin, kuten Java, ja suuriin sovelluksiin, kuten OpenSSH ja bind. Rpmlint-työkalu varoittaa havaitessaan, että jokin toimenpide on tehtävä. että tunnistus perustuu heuristiikkaan ja rajoittuu C-ohjelmiin, joten manuaalinen tarkastus on suositeltavaa. Huomaa kuitenkin, että on olemassa sovelluksia, jotka asettavat tarkoituksella heikommat tai mukautetut asetukset tarkoitukseen (esim. Postfix); näiden ei tarvitse noudattaa politiikkaa. Jos olet epävarma, keskustele Fedoran turvallisuusjoukkue:n kanssa.

Uudet salauskirjastot

Uusien salauskirjastojen on noudatettava salauskäytäntöjä päästäkseen Fedoraan, ellei Fedoran pakkausvaliokunta ole myöntänyt poikkeusta, kuultuaan Fedoran tietoturvaryhmää.

C/C++ -sovellukset

  • OpenSSL-sovellukset:

    • Jos sovellus tarjoaa määritystiedoston, jonka avulla voidaan muuttaa salausluettelon merkkijonoa, varmista, että lähetetty tiedosto sisältää oletusarvoisesti "PROFILE=SYSTEM". Siinä tapauksessa lisätoimia ei tarvita.

    • Jos sovelluksella ei ole määritystiedostoa, varmista, että oletus salausluetteloa ei ole määritetty tai että oletusluetteloksi on asetettu "PROFILE=SYSTEM". Eli tarkista SSL_CTX_set_cipher_list() -lähdekoodi. Jos sitä ei ole, mitään ei tarvitse tehdä (käytetään oletusasetusta). Muussa tapauksessa, jos kyseinen puhelu on läsnä ja tarjoaa kiinteän merkkijonon, joka ei sisällä PSK: ta tai SRP:ta, korvaa merkkijono "PROFILE = SYSTEM" tai poista puhelu.

  • GnuTLS-sovellukset:

    • Jos sovellus tarjoaa määritystiedoston, jonka avulla salausprioriteettimerkkijonoa voidaan muokata, lähetetty tiedosto sisältää oletusarvoisesti "@SYSTEM". Siinä tapauksessa lisätoimia ei tarvita.

    • Jos sovelluksella ei ole määritystiedostoa, varmista, että se käyttää gnutls_set_default_priority () tai että oletusprioriteettimerkkijono on "@SYSTEM". Eli tarkista * gnutls_priority_set_direct*(), gnutls_priority_init(); jos niitä ei ole ja gnutls_set_default_priority () käytetään, mitään ei tarvitse tehdä. Muussa tapauksessa tarkista sovelluksen tarjoamat merkkijonot. Jos se sisältää PSK: n tai SRP: n, älä tee mitään (oletuskäytäntö ei tällä hetkellä kata näitä sovelluksia). Jos ei, korvaa gnutls_priority_set_direct() sanoilla gnutls_set_default_priority(). Jos gnutls_priority_init() käytetään kiinteän merkkijonon kanssa, korvaa merkkijono "@SYSTEM".

Muita salauskirjastoja käyttävät sovellukset eivät noudata järjestelmänlaajuisia salauskäytäntöjä (huomaa, että koko järjestelmän kattavien käytäntöjen noudattaminen on parhaillaan käynnissä NSS-kirjastoissa). Fedorassa olevien sovellusten tulisi käyttää yhtä näistä kirjastoista, kun on valinnanvaraa, ja mieluiten versiota, jonka ylävirta suosittelee.

Perl-sovellukset

  • IO::Socket::SSL Perl-sovellukset:

    • Tarkista, että lähdekoodi välittää SSL_cipher_list argumentti IO::Socket::SSL's menetelmille, kuten new(), start_SSL(), new_from_fd(), set_defaults(), set_client_defaults(), ja set_server_defaults(). Jos sitä ei ole, mitään ei tarvitse tehdä (käytetään oletusasetusta). Muussa tapauksessa, jos kyseinen argumentti on läsnä, poista argumentti tai muuta sen arvoa OpenSSL-osassa kuvatulla tavalla.

  • Net::SSLeay Perl-sovellukset:

    • Tarkista lähdekoodi näille, CTX_set_cipher_list(), set_cipher_list(), ja set_pref_cipher() aliohjelman kutsut *Net::SSLeay * -nimi-avaruudesta. Jos tällainen puhelu esiintyy, noudata OpenSSL-osassa kuvattuja ohjeita.

  • LWP::UserAgent Perl-sovellukset:

    • Tarkista lähdekoodin läpäisy SSL_cipher_list-argumentti ssl_opts()-menetelmäkutsulle LWP::UserAgent-esineella. Jos tällainen puhelu esiintyy, noudata OpenSSL-osassa kuvattuja ohjeita.