microsoft
Gültige CRLs in ADCS
Microsoft ADCS speichert alle aktuell gültigen CRLs in der CA eigenen Datenbank.
Dieses Verhalten lässt sich auch ändern, wenn man alte CRLs für Audit-Zwecke braucht.
Anzeigen lassen kann man sich die CRLs mit
certutil -view crl
Zitat des Tages
You should not use the console, and unless there is a very compelling reason, you should not have a full Windows desktop on the server.
MS IIS Server Header
Im IIS den Server Header zu deaktivieren ist nicht leicht. Es finden sich jede Menge Anleitungen dazu – aber nichts funktioniert.
Im Apache verändert man diesen Header über eine Zeile in einem Textfile (ServerTokens Prod). Eigentlich erwarte ich da, dass Microsoft für den IIS ein Häkchen oder ein Dropdown im GUI anbietet, mit dem man das ändern kann. Gibt es das nicht, würde ich einen Wert in der Registry erwarten – den gibt es aber auch nicht wirklich.
Eine einfache Möglichkeit bietet EASILY REMOVE UNWANTED HTTP HEADERS IN IIS 7.0 TO 8.5. Einfach das .msi Paket herunterladen, installieren, fertig.
Das ist natürlich gleichzeitig der Nachteil – man muss dazu ein MSI Paket installieren.
Das Paket ist laut Virustotal sauber. Ob jemand das auf einem produktiven Server installieren will, muss aber jeder für sich selbst entscheiden.
OCSP Responder Monitoring und die Nonce
Eine Nonce, aus dem Englichen für „Number ONCE“, ist eine Nummer die nur ein Mal verwendet werden soll. Diese Nummer wird vom OCSP Client generiert, mit der Anfrage mitgeschickt. Der OCSP Responder muss den Wert in der signierten Antwort mitschicken, zur Bestätigung dass es sich tatsächlich um die entsprechende Antwort auf die Anfrage handelt. Das dient einerseits als Schutz vor einer Replay Attacke, hat aber auch den „Nachteil“ dass die Antwort nicht gecached werden kann. Und genau das ist für ein Monitoring von Vorteil, weil damit erkannt werden kann, ob tatsächlich neue OCSP Responses erzeugt werden, und nicht nur irgendwelche Antworten aus einem Cache fallen.
In RFC5019 heißt es zur Nonce beim OCSP Responder, dass sich der Client nicht alleine auf den Nonce verlassen darf, sondern im Zweifelsfall auch noch den Timestamp prüfen muss.
Clients that opt to include a nonce in the request SHOULD NOT reject a corresponding OCSPResponse solely on the basis of the nonexistent expected nonce, but MUST fall back to validating the OCSPResponse based on time. Clients that do not include a nonce in the request MUST ignore any nonce that may be present in the response.
Microsoft zu OCSP, Nonce und Cache
Allow Nonce requests. This option instructs the Online Responder to inspect and process an OCSP request nonce extension. If a nonce extension is included in the OCSP request and this option is selected, the Online Responder will ignore any cached OCSP response and will create a new response that includes the nonce provided in the request. If this option is disabled and a request that includes a nonce extension is received, the Online Responder will reject the request with an „unauthorized“ error.
Microsoft sagt in der gleichen Quelle übrigens, dass Microsoft Clients mit aktuellem Stand keine Nonce unterstützen
The Microsoft OCSP client does not support the nonce extension.
Word und Bilder
Word kann nicht mit mehr als einem Bild umgehen!
Darüber bin ich bei meinen Recherchen danach wie man sauber mit Bildern in Word umgeht gestoßen. Und ich muss sagen, das stimmt einfach.
Zum Beispiel: Füge einem Bild eine Beschriftung hinzu. Geht alles wunderbar, nur die Nummerierung lässt sich nicht abschalten. OK. Kein Problem – lässt sich manuell löschen.
Verschiebe das Bild mit der Beschriftung… Bild verschoben, Beschriftung bleibt stehen.
Warum auch sollte das eine Einheit bilden? Wem in aller Welt könnte das vernünftig vorkommen?
Aber es wird schlimmer. Ändere die Größe von dem Bild, mit umlaufenden Text. Obwohl bei der Bildunterschrift eingestellt ist, dass die Beschriftung unter das Bild soll, steht sie jetzt neben dem Bild.
Also wie löst man das? Man kann ja gruppieren… geht aber nicht. Den Absatz mit der Bildunterschrift mit dem Bild zu gruppieren. Beides kann markiert werden. Kontextmenü ist ausgegraut. Danke!
Ein paar Recherchen später: Die Lösung ist einfach, pack das Bild in ein Textfeld zusammen mit der Unterschrift… Ja klar, da kommt jeder drauf – wenn ich ein Bild haben will mache ich logischerweise ein Textfeld! Das ist so logisch und eingängig, niemand käme auf die Idee ein Textfeld bloß für Text zu verwenden.
Gibts eine Lösung dafür? Ich vermute schon. Aber spätestens an diesem Punkt haben die meisten Menschen wohl die Nerven verloren und laufen schreiend im Kreis.
Ocsp Responder Caching
Dreht man einen Microsoft OCSP Responder ab, schlägt das Monitoring darauf nicht an. Warum?
Weil die OCSP Responses vom IIS gecached werden und zwar für so lange wie auch die CRL noch gültig wäre!
Response caching. After a request is received and a certificate serial number is extracted, the Online Responder Web proxy will check the local cache for a valid response. The cache is implemented as part of the ISAPI extension and is an in-memory cache. If a client request generates a cache fault, the Online Responder Web proxy will make a request to the Online Responder service for a response. The cache item validity period is set to the CRL validity period from which the response was generated or to the signing key validity, whichever is shorter.
Zusätzlich wird noch für 120 Sekunden gecached.
In addition to the OCSP ISAPI extension caching, the IIS HTTP.SYS library performs caching for 120 seconds. Multiple requests to the Online Responder in that time period will be served with the HTTP.SYS-cached response.
Online Responder Installation, Configuration, and Troubleshooting Guide
Batch Script und die Prozentzeichen
Ich hab mich wieder Mal über ein Script geärgert.
Folgendes Beispiel hat beim Testen auf der Shell wunderbar funktioniert
C:\tmp\test>for /f %f in ('dir *.txt') DO echo %f Datei nicht gefunden C:\tmp\test>echo Volume Volume C:\tmp\test>echo Volumeseriennummer: Volumeseriennummer: C:\tmp\test>echo Verzeichnis Verzeichnis
Das macht Output mit dem Befehl zwischen den einfachen Anführungszeichen.
Also ab in ein Script damit und nochmal ausgeführt
C:\tmp\test>test
Was? Kein Output – sollte das Script nicht das gleiche tun, wie wenn die Zeile auf der Shell geschrieben geht?
Eine kleine Änderung im Script – %f wird mit %%f ersetzt:
for /f %%f in ('dir *.txt') DO echo %%f
Und jetzt kommt aus dem Script das gleiche raus, wie vorher auf der Commandline:
C:\tmp\test>test C:\tmp\test>for /F %f in ('dir *.txt') DO echo %f Datei nicht gefunden C:\tmp\test>echo Volume Volume C:\tmp\test>echo Volumeseriennummer: Volumeseriennummer: C:\tmp\test>echo Verzeichnis Verzeichnis
Zwei Mal Powershell
Einfache Übung – den Inhalt einer Datei am Bildschirm ausgeben.
Dazu eine Datei test.txt
das ist ein test zeile 2
Und jetzt mal probieren, ein paar einfache Befehle auf der Shell einzugeben:
PS C:\tmp> $Input= get-content .\test.txt PS C:\tmp> foreach ($line in $Input){ >>> write-output $line >>> } PS C:\tmp>
Seltsam, es kommt überhaupt kein Output raus? Was habe ich nur falsch gemacht? In dem Script vorhin hat das doch exakt genau so ausgeschaut!
Also ein Script daraus erstellen test.ps1
$Input= get-content .\test.txt foreach ($line in $Input){ write-output $line }
Und ausführen:
PS C:\tmp> .\test.ps1 das ist ein test zeile 2
Schön – wer könnte auch erwarten, dass eine Shell zwei Mal das gleiche tun kann, mit exakt dem gleichen Input?
Zitat des Tages
The main point to remember is that a Microsoft CA cannot issue a certificate that exceeds the remaining lifetime on the CA certificate.