Come ottenere Service_key e l'interfaccia di chiamata della funzione corrispondente dalla sorgente TGS_REP di Samba

1

1, Il mio ambiente di configurazione esistente è come segue: (1), Server_side, Redhat5.5 Enterprise con samba4.0.0 installato, indirizzo IP: 5.5.5.149; nome di dominio: EXAMPLE.COM; (2), Client_side: Windows Server 2003, indirizzo IP: 5.5.5.45, nome host: SMB1; Ho seguito la configurazione di collegamento con esito positivo, ovvero il lato server è configurato come DC AD. Ora posso ottenere che il client (SMB1) si unisca al dominio EXAMPLE.COM. Nel processo di SMB1 che si unisce a EXAMPLE.COM, si sta verificando l'autenticazione kerberos, allo stesso tempo ho acquisito i pacchetti AS_REQ, AS_REP, TGS_REQ e TGS_REP tramite lo strumento Wireshark.

2, Il mio obiettivo è trovare l'interfaccia di chiamata della funzione corrispondente di Sevice_key nella sorgente Samba dal lato server Redhat5.5. Dalla lettura della documentazione relativa a Kerberos, ho appreso che il Service_key esiste nel pacchetto di richiesta TGS_REP, che ha utilizzato per accedere al lato server nel KRB_AP_REQ.

3, My Current Progress è che sono stato trovato stack di chiamate di AS_REQ e TGS_REQ attraverso il debugging a passo singolo di gdb tool e l'impostazione del livello gdb con 10. Gli stack di chiamate sono i seguenti:

Lo stack di chiamate AS_REP è:

# 0. / source4 / heimdal / kdc / kerberos5.c: 1032 # 1 ../ source4 / heimdal / kdc / process.c: 70 # 2 / source4 / heimdal / kdc / process.c : 242 # 3 ../ source4 / kdc / kdc.c: 161 # 4 ../ source4 / kdc / kdc.c: 519 # 5 ../ lib / tevent / tevent_req.c: 101 ...... ...

Lo stack di chiamate TGS_REP è:

# 0 ../source4/heimdal/kdc/krb5tgs.c:2355 # 1 ../ source4 / heimdal / kdc / process.c: 97 # 2 ../ source4 / heimdal / kdc / process.c: 242 # 3 ../ source4 / kdc / kdc.c: 161 # 4 ../ source4 / kdc / kdc.c: 519 # 5 ../lib/tevent/tevent_req.c:101 ....... ..

Anche così, il codice è enorme e molto difficile da imparare perché correlato alla crittografia. Il mio obiettivo non ha ancora raggiunto

4, I miei problemi urgenti possono essere descritti: Le funzioni correlate dei pacchetti AS_REQ, AS_REP, TGS_REQ e TGS_REP sono più difficili da comprendere, puoi fornire una spiegazione dettagliata?

In primo luogo, quali sono le corrispondenti interfacce delle funzioni con AS_REQ, AS_REP, TGS_REQ e TGS_REP? In particolare, le parti rilevanti con Service_key di TGS_REP?

In secondo luogo, la relazione logica della chiamata dei pacchetti precedenti?

In terzo luogo, Specificamente, poiché non sono molto chiaro diverse funzioni

1) /source4/heimdal/kdc/kerberos5.c:956 _kdc_as_rep ();

2) /source4/heimdal/kdc/krb5tgs.c:2288 _kdc_tgs_rep ();

3) /source4/heimdal/kdc/process.c:64 decode_AS_REQ () non ha definizione.

Fornisci alcuni materiali, ad esempio i collegamenti, se possibile. Qualsiasi aiuto sarebbe apprezzato sinceramente.

    
posta laoyang360 16.11.2013 - 02:13
fonte

0 risposte

Leggi altre domande sui tag