abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 02:22 | Nová verze

    V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Forgejo byla vydána ve verzi 15.0 (Mastodon). Forgejo je fork Gitei.

    Ladislav Hagara | Komentářů: 0
    dnes 01:11 | Pozvánky

    Současně se SUSECON 2026 proběhne příští čtvrtek v Praze také komunitní Open Developer Summit (ODS) zaměřený na open source a openSUSE. Akce se koná ve čtvrtek 23. 4. (poslední den SUSECONu) v Hilton Prague (místnost Berlin 3) a je zcela zdarma, bez nutnosti registrace na SUSECON. Na programu jsou témata jako automatizace (AutoYaST), DevOps, AI v terminálu, bezpečnost, RISC-V nebo image-based systémy. Všichni jste srdečně zváni.

    lkocman | Komentářů: 1
    včera 15:44 | Humor

    Český úřad zeměměřický a katastrální zavedl u anonymního nahlížení do katastru nemovitostí novou CAPTCHA ve formě mapové puzzle: nepřihlášení uživatelé musí nově správně otočit devět dlaždic v 3x3 poli tak, aby dohromady daly souvislý obrázek výseče reálné mapy, přičemž na to mají pouze jeden časově omezený pokus. Test je podle uživatelů i odborníků příliš obtížný a na sociálních sítích pochopitelně schytává zaslouženou kritiku a

    … více »
    » FIDESZ🧡! « | Komentářů: 9
    včera 15:33 | Nová verze

    Byla vydána verze 1.95.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | Zajímavý software

    Mozilla prostřednictvím své dceřiné společnosti MZLA Technologies Corporation představila open-source AI klienta Thunderbolt. Primárně je určený pro firemní nasazení.

    Ladislav Hagara | Komentářů: 0
    včera 14:00 | IT novinky

    Firma Cal.com oznámila, že přesouvá svůj produkční kód z otevřeného do uzavřeného repozitáře z důvodu bezpečnostního rizika umělé inteligence, která prý dokáže vyhledávat a zneužívat zranitelnosti rychleji, než by je jejich vývojářský tým stíhal opravovat. Zároveň zveřejnila samostatnou, open-source verzi Cal.diy pod licencí MIT, ovšem bez řady původních funkcí. O tom, zda je toto opatření rozumné, existují pochyby. … více »

    » FIDESZ🧡! « | Komentářů: 6
    včera 13:55 | Nová verze

    Vývojáři KDE na Mastodonu oznámili vydání balíku aplikací KDE Gear 26.04. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    15.4. 23:00 | Nová verze

    Kryptografická knihovna OpenSSL byla vydána v nové verzi 4.0. Přehled změn v souboru CHANGES.md na GitHubu. Odstraněna byla podpora SSLv2 Client Hello a SSLv3. Ve výchozím nastavení byla zakázána podpora odmítnutých eliptických křivek v TLS dle RFC 8422. Přibyla například podpora Encrypted Client Hello (ECH, RFC 9849).

    Ladislav Hagara | Komentářů: 0
    15.4. 20:55 | Komunita

    curl up 2026, tj. setkání vývojářů a uživatelů curlu, proběhne opět v Praze. O víkendu 23. a 24. května v Pracovně.

    Ladislav Hagara | Komentářů: 0
    15.4. 15:55 | IT novinky

    Aplikace pro ověřování věku uživatelů on-line platforem je technicky hotová a brzy bude k dispozici pro občany EU, oznámila dnes předsedkyně Evropské komise Ursula von der Leyenová. Půjde podle ní o bezplatné a snadno použitelné řešení, které pomůže chránit děti před škodlivým a nelegálním obsahem. Aplikace bude podle ní fungovat na jakémkoli zařízení a bude zcela anonymní.

    Ladislav Hagara | Komentářů: 15
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (8%)
     (1%)
     (12%)
     (30%)
     (3%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 1342 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: TLS - bol použitý client certificate?

    29.8.2018 13:54 Semo | skóre: 45 | blog: Semo
    TLS - bol použitý client certificate?
    Přečteno: 362×
    Ladíme closed-source serverovú aplikáciu, ku ktorej sa klient pripája HTTPS/TLS spojením a autentikuje klienstkým certifikátom. Keďže ide o centrálneho správcu hesiel, tak buď sa spojenie podarí alebo skončí na "HTTP/1.1 500 Internal Server Error". Z neznámeho dovodu loguje málo alebo vobec (to rieši sa s dodávateľom).

    Spojenie z klienta dokážem simulovať pomocou openssl
    openssl s_client -connect <SERVERFQDN>:443 -CAfile CA-certs.pem -prexit -servername <SERVERFQDN> -no_ticket -state -cert cert.pem -key key.pem
    Nedokážem ale z výstupu určiť či bol vyžiadaný/poslaný klienstký certifikát alebo nie. Výstup sa líši len v nevýznamých častiach oproti volaniu bez optionov "-cert" a "-key".

    Ako mám zistiť či bol poslaný klientský certifikát?
    If you hold a Unix shell up to your ear, you can you hear the C.

    Řešení dotazu:


    Odpovědi

    29.8.2018 14:02 NN
    Rozbalit Rozbalit vše Re: TLS - bol použitý client certificate?
    Pridal bych parametr '-state' a v krajnim pripade '-debug'. Imho pokud server vraci 500 ta aplikace/nginx whatever nebude uplne v poradku..
    29.8.2018 15:46 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: TLS - bol použitý client certificate?
    "-state" tam uz je. Debug len vypisuje dumpy posielanych dat. Mozno sa z tych dumpov da odvodit odpoved ale podla coho v tych dumpoch to mam spoznat? "500 Internal server error" je umyselne univerzalna reakcia na kazdu chybu, aby z toho neslo nic odvodit. Ide o "bezpecnostnu" aplikaciu. Proste bud je request OK a po tom odpoveda HTTP 200 a posiela XML data, alebo inak HTTP 500.

    Na https://badssl.com/ su pripravene testovacie virtual hosty na vsetky mozne pokusy okolo SSL/TLS a da sa tam hrat aj s client certificates. Tam to aj vidno, ze sa komunikacia lisi ak bol predhodeny client cert alebo nie. Ale oni to maju asi vzorovo a priatelsky nakonfigurovane. Odpovedat na otazku, ci ku TLS spojeniu bol prilozeny client certificate by snad malo byt mozne aj bez spoluprace servera. Klient to predsa musi vediet, ci nejaky certifikat posielal alebo nie.

    Ukazky pre badssl.com (heslo pre private key je "badssl.com"):
    # s client cert
     openssl s_client -connect client.badssl.com:443 -prexit -cert badssl.com-client.pem -servername client.badssl.com -no_ticket -state
    
    # bez client cert
    openssl s_client -connect client.badssl.com:443 -prexit -servername client.badssl.com -no_ticket -state
    
    Pri pouziti client cert vo vypise pribude riadok
    SSL_connect:SSLv3/TLS write certificate verify
    (Uvedene priklady by este mali mat option "-CAfile" so zoznamom CA pre overenie servera, ale na strucnu ukazku to nie je nevyhnutne)

    Lenze zaroven vidno, ze server poslal "Acceptable client certificate CA names", co je zoznam CA, pomocou ktorych podpisany client cert bude akceptovat. Co sa hodi pre pripad, ze klient ma plno certifikatov a nevie, ktory ma poslat (nijak vynimocne, ak je klientom bezny www browser).

    V mojom pripade ale viem, ktory client cert chcem poslat a tusim server zoznam oblubenych CA posielat nemusi. Takze v mojom prpade neviem, ci bol client cert poslany a ani ako to zistit.
    If you hold a Unix shell up to your ear, you can you hear the C.
    Řešení 2× (Semo (tazatel), Filip Jirsák)
    29.8.2018 16:16 ttt
    Rozbalit Rozbalit vše Re: TLS - bol použitý client certificate?
    Pokud server vyžaduje klientský certifikát, musí si o něj říct. V požadavku může poslat oblíbené CA. Každopádně -debug nebo -msg vypisují hexdump toho, co se posílá. Certifikát je dost velký, v tom hexdumpu by nemělo být tak těžké najít, jestli tam je nebo ne.
    Řešení 1× (Filip Jirsák)
    30.8.2018 13:44 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: TLS - bol použitý client certificate?
    Tak po zapnuti "-msg" vidno, ci sa posiela klientsky certifikat:
    ...
    
    >>> ??? [length 0005]
        16 03 03 04 ab
    >>> TLS 1.2Handshake [length 04ab], Certificate
        0b 00 04 a7 00 04 a4 00 04 a1 30 82 04 9d 30 82
        02 85 a0 03 02 01 02 02 09 00 f0 bb 28 c1 63 7e
    ...
        d2 a2 fd 76 e1 65 54 7b 45 88 f8 28 2a b1 1d 25
        a3 55 50 be cd 1b da 69 17 ca 51
    SSL_connect:SSLv3/TLS write client certificate
    
    ...
    Ak sa neposiela, tak to vyzera takto:
    ...
    
    >>> ??? [length 0005]
        16 03 03 00 07
    >>> TLS 1.2Handshake [length 0007], Certificate
        0b 00 00 03 00 00 00
    SSL_connect:SSLv3/TLS write client certificate
    
    ...
    Este krajsie to vidno ak sa pri kompilacii OpenSSL zapne "enable-ssl-trace" a pri pustani s_client sa prida option "-trace". Pravdepodobne to ale znamena vlastnu kompilacii OpenSSL, pretoze to tusim nie je default.

    Pri "-trace" je vo vypise info o posielanom certifikate a potom aj cely certifikat jak v parsovanej forme, tak aj v BASE64
    ...
    
    Sent Record
    Header:
      Version = TLS 1.2 (0x303)
      Content Type = Handshake (22)
      Length = 1195
        Certificate, Length=1191
          certificate_list, length=1188
            ASN.1Cert, length=1185
    ------details-----
    Certificate:
        Data:
            Version: 3 (0x2)
            Serial Number:
                f0:bb:28:c1:63:7e:c9:57
        Signature Algorithm: sha256WithRSAEncryption
            Issuer: C = US, ST = California, L = San Francisco, O = BadSSL, CN = BadSSL Client Root Certificate Authority
            Validity
                Not Before: Nov 16 05:36:33 2017 GMT
                Not After : Nov 16 05:36:33 2019 GMT
            Subject: C = US, ST = California, L = San Francisco, O = BadSSL, CN = BadSSL Client Certificate
            Subject Public Key Info:
                Public Key Algorithm: rsaEncryption
                    Public-Key: (2048 bit)
                    Modulus:
                        00:c7:37:5f:11:eb:1e:4e:cf:eb:ba:48:e5:cb:a3:
                        12:2c:73:3e:46:1d:1e:9c:0d:c0:8b:83:23:da:c7:
    ...
             be:cd:1b:da:69:17:ca:51
    -----BEGIN CERTIFICATE-----
    MIIEnTCCAoWgAwIBAgIJAPC7KMFjfslXMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNV
    ...
    Ioacp9qb0qL9duFlVHtFiPgoKrEdJaNVUL7NG9ppF8pR
    -----END CERTIFICATE-----
    ------------------
    
    SSL_connect:SSLv3/TLS write client certificate
    
    ...
    Ak client certificate posielany nebol, tak :
    ...
    
    Sent Record
    Header:
      Version = TLS 1.2 (0x303)
      Content Type = Handshake (22)
      Length = 7
        Certificate, Length=3
          certificate_list, length=0
    
    SSL_connect:SSLv3/TLS write client certificate
    
    ...
    If you hold a Unix shell up to your ear, you can you hear the C.
    30.8.2018 09:23 MP
    Rozbalit Rozbalit vše Re: TLS - bol použitý client certificate?
    Divil by ses. Napr. SOAP vraci 500 jako OK a pak to webserver jen preda.
    30.8.2018 11:54 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: TLS - bol použitý client certificate?
    Toto je SOAP API ku CyberArk-u a HTTP 500 pouziva na signalizovanie akejkolvek chyby. Ked sa clovek nedohovori s predradenym MS IIS, tak dostava obvykle HTTP 403, ak je IIS spokojny, tak to forwarduje applikacii pod nim a ta bud posle odpoved alebo HTTP 500.
    If you hold a Unix shell up to your ear, you can you hear the C.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.