Installeer jy 'n ondertekende VPN-profiel op 'n iPhone? Lees eers die vragte
'n Ondertekende profiel bewys wie dit verpak het, nie wat dit installeer nie. Gaan die omhulsel, elke vrag en elke sertifikaat na voordat jy 'n VPN of 'n wortel-CA vertrou.
Profiele kom in Instellings aan met 'n naam, 'n ondertekenaar en 'n Installeer-knoppie, en dit is die ondertekenaar-reël wat die meeste mense lees. Daardie reël beantwoord een vraag: wie het hierdie instellings verpak, volgens die reëls vir handtekeningverifikasie. Dit sê nie dat die VPN-vrag na jou werkgewer se poort verwys nie, of dat 'n ingebedde wortelsertifikaat in jou TLS-vertrouensberg hoort nie. Die stap-vir-stap hieronder maak die pakket oop in die volgorde waarin die toestel dit sal toepas.
Begin by die omhulsel: wie het hierdie profiel onderteken
Op iOS verskyn die profiel onder Instellings, Algemeen, VPN en Toestelbestuur, met die ondertekenaar bokant die Installeer-knoppie. Lees daardie naam voordat jy enigiets tik, en vra of dit die organisasie is van wie jy verwag het om instellings te ontvang. 'n Geldige handtekening van 'n party wat jy nie herken nie, is steeds 'n geldige handtekening, en dit magtig hulle konfigurasie eerder as joune. Dieselfde skerm vertel ook of die profiel hoegenaamd onderteken is.
As jy die lêer op 'n Mac het, ondersoek dit voordat dit by die foon uitkom. Die sekuriteitsinstrument dekodeer die CMS-omhulsel en druk die plist wat die toestel sal lees, dieselfde inhoud sonder 'n Installeer-knoppie in die pad. Apple se konfigurasie-afdwinging dokumentasie beskryf ondertekening as oorsprongvalidasie, wat presies die omvang is wat hier beskryf word.
security cms -D -i corp-vpn.mobileconfig -o corp-vpn.plist
plutil -p corp-vpn.plist
Stop hier as die ondertekenaar nie is wie jy verwag het nie, of as die lêer ononderteken is en via 'n kanaal aangekom het wat nie daarvoor kan instaan nie. Niks later in hierdie stap-vir-stap maak 'n onbetroubare omhulsel betroubaar nie.
Maak elke vrag oop en benoem wat dit installeer
'n Profiel is 'n houer, en die interessante deel is die PayloadContent skikking daarin. Elke inskrywing dra 'n PayloadType wat sê wat die toestel sal installeer: 'n bestuurde VPN-konfigurasie, 'n PKCS#12-identiteit, 'n wortelsertifikaat of 'n bestuursinskrywing. Druk die tipes uit voordat jy enige van die instellings lees.
plutil -extract PayloadContent xml1 -o - corp-vpn.plist |
grep -E 'PayloadType|PayloadDisplayName'
'n VPN-vrag benoem 'n verbinding: bedieneradres, verifikasiemetode en moontlik 'n reël per app of op aanvraag. 'n Identiteitsvrag lewer die kliëntbewys wat daardie verbinding sal aanbied. 'n Wortelsertifikaatvrag voeg 'n vertrouensanker by, en 'n bestuursvrag gee voortdurende beheer aan 'n bediener oor. Dit is vier verskillende verpligtinge, en die handtekening dek die pakket eerder as om elkeen afsonderlik te waarborg. Lees hulle in daardie volgorde, want die VPN is nutteloos sonder die identiteit, en die identiteit beteken min sonder om te weet wie dit uitgereik het.
Wagwoordbeskerming op die lêer is weer 'n aparte eienskap. 'n Versleutelde pakket verberg die inhoud van iemand sonder die wagwoord; dit besluit nie of jy moet magtig wat binne is nie. Beskou die wagwoord as 'n afleweringsmeganisme, nie as 'n hersiening nie.
Spoor die sertifikate na die verbinding wat hulle gebruik
Lys die sertifikate in die pakket en pas elkeen by 'n taak. Die kliëntsertifikaat identifiseer hierdie toestel by die poort, die CA wat dit uitgereik het, hoort in die vertrouensketting vir daardie verbinding, en 'n wortel wat vir 'n instaanbediener of 'n interne diens geïnstalleer is, is nie outomaties 'n anker vir elke HTTPS-werf nie. Op iOS bly 'n wortel wat met die hand geïnstalleer is, vir TLS onvertrou totdat jy dit onder Instellings, Aangaande, Sertifikaatvertrouensinstellings aktiveer, terwyl 'n wortel wat deur bestuur afgelewer word, sonder daardie stap vertrou word. Daardie verskil is presies waarom die vrag se doel saak maak.
openssl pkcs7 -inform DER -in corp-vpn.mobileconfig -print_certs -noout
security find-certificate -a -c "Corp Root" -p | openssl x509 -noout -subject -dates
'n Verskaffer wat jou verkeer dra, is om daardie rede nie die TLS-eindpunt van elke webwerf wat jy besoek nie. Onderskepping benodig die verkeerspad en 'n vertrouensanker wat die toepassing aanvaar, en 'n profiel wat een sertifikaat dra, bewys nie een van die twee nie. Vra watter verbinding die sertifikaat gebruik en watter toepassings dit sal aanvaar, in plaas daarvan om te aanvaar dat die installering van die profiel alles ontsyfer.
Na installasie: verifieer, en weet wat verwydering doen
Sodra die profiel geïnstalleer is, bevestig dit vanaf die toestel eerder as vanaf die lêer wat jy afgelaai het. Die instellingsskerm lys die geïnstalleerde profiel, sy ondertekenaar en sy vragte, en die VPN-skerm wys of die verbinding ingestel is soos bedoel. Om die afgelaaide lêer te verwyder, verwyder niks; die geïnstalleerde konfigurasie is 'n aparte objek.
profiles show -type configuration
scutil --nc list
As die profiel 'n bestuursinskrywing insluit, lees die gevolge van verwydering voordat jy dit installeer, nie daarna nie. Om daardie inskrywing te verwyder, neem sy verwante konfigurasies saam en kan bestuurde programme verwyder, afhangende van hoe die toestel ingeskryf is. Dit is nie 'n herstelstap om te probeer wanneer 'n sertifikaat verkeerd lyk nie. Vra die administrateur watter vrag die probleem besit voordat jy enigiets verwyder.
Die stap-vir-stap eindig met vier aparte antwoorde: wie die pakket onderteken het, watter vragte dit installeer, watter identiteit en vertroue elke verbinding gebruik, en wat verwydering sou saamneem. Hou hulle apart, en 'n ondertekende profiel word 'n nagegane besluit in plaas van 'n groen regmerkie.