Jump to content

blub

Expert Member
  • Gesamte Inhalte

    7.598
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von blub

  1. VM-ler haben naturgemäß physikalischen Zugriff auf alle virtuellen Maschinen, die auf ihren Kisten laufen. In einer Umgebung mit getrennten Administrationsrollen z.B. DomainAdmins, ExchangeAdmins, SQLAdmins,etc. hebelt daher eine Virtualisierungsschicht diese Security-Trennung aus. Securitykritische Server lassen wir daher nicht virtualisiert laufen.

     

    blub

  2. Hallo auchvonda,

    Ich weiss, ich bin ein bischen spät dran. Aber die Aussagen, dass Powershell die oben gestellte Aufgabe nicht lösen kann, will ich doch nicht so stehen lassen.

     

    Eine Möglichkeit mit format-table

    $Identity = "GruppeABC"
    
    Get-ADGroupMember -Identity $Identity | FT Name, 
    @{
       Label="myGroupName"
       Expression={$Identity}
     },ObjectClass -Autosize
    
    

    oder per function

    Function Write-GroupMembers{
      Param($Identity)
      Get-ADGroupMember -Identity $Identity | FT Name, 
      @{
        Label="myGroupName"
        Expression={$Identity}
      },ObjectClass -Autosize
     }#End Function
    
     Write-GroupMembers "GroupABC"
    
    

    ein paar weitere Beispiele findest du beispielsweise unter

    http://www.powershellpraxis.de/index.php/formatierung-der-ausgabe#3%20Ausgabe%20in%20Tabellenform

    oder

    http://poshcode.org/828

     

    In der Praxis würde ich wahrscheinlich eher selbstdefinierte psobjects nutzen.

     

    blub

  3. Hallo,

    Array-Operationen wie Split / Join sind generell relativ aufwändig,

     

    Vielleicht geht es so etwas schneller:

     

    blub

    Set-StrictMode -Version "2.0"
    Clear-Host
    
    $IP = "192.168.33.132"
    
    Function Anonymize-IP{
      Param($Ip)
      $Ip = ($IP -as [Net.IPAddress])
    
      $Bits = $Ip.GetAddressBytes()
      $Ip1 = $Bits[0]
      $Ip2 = $Bits[1]
      #$Ip3 = $Bits[2]
      #$Ip4 = $Bits[3]
      $AnonymIP = "$Ip1.$Ip2.0.0"
      Return $AnonymIP
    }
     
    $NewIP = Anonymize-IP $Ip
    $NewIP
    
    • Like 1
  4. Manche Anwender wollen eventuell -warum auch immer- ihre biometrischen Daten nicht ihrer Firma geben. Da hilft keine Diskussion und keine Überzeugungsarbeit weiter. Zwingen kann man niemanden zur Biometrie, kündigen deswegen auch nicht. Damit bräuchte die Firma für diesen Personenkreis ein paralleles Ersatzauthentificationssystem wie z.B. Smartcard, was aber wieder Aufwand für eine PKI-Struktur bedeutet.

     

    Es gibt auch Länder wie Frankreich, die die zentrale Speicherung biometrischer Daten juristisch nicht erlauben.

     

    Bei Fingerprint kommt dazu, dass ein gewisser Prozentsatz (~0.5%) der Menschheit keinen einzigen geeigneten Finger mit einem genügend stark ausgeprägtem Fingerabdruck zum Scannen besitzt. 

    Fingerprint als zweiter Faktor zum Authentisieren ist wirklich geil und meines Erachtens sehr sicher, aber es hat auch grundsätzliche Probleme.

  5. Einem Angreifer ist es relativ egal, ob ein Password "Firma123" oder "Brmpf346" lautet. Aufwändig wird es für ihn, wenn die Passwordlänge > min. 16 Zeichen incl. Sonderzeichen ist. Privileged Accounts oder ServiceAccounts sollten sogar > min. 20 Zeichen sein.

    Gib deinen Usern Keypass/ Passwordsafe etc. an die Hand, setz die Passwortlänge entsprechend hoch, das max. Passwordage für Anwender auf ca. 45 Tage und für ServiceAccounts auf max. 1 Jahr.

    Dann bist du relativ sicher und kannst dir einen Filter sparen.

     

    blub

  6. Deswegen versuche ich eine Alternative zu finden mit der ich das Ganze realisiere. Aber so wie ichs im Netz lese bzw. hier lese/höre, komme ich wohl nicht um eine eigene CA rum?

     

    Wir haben in unserem Unternehmen mal die Kosten pro Zertifikat aus einer eigenen CA den Kosten eines Zertifikates aus einer externen CA gegenübergestellt. Die Kosten bei einer externen CA waren um einiges günstiger, wobei es nur um Userzertifikate ging.

    Für interne Maschinenzertifikate führt wohl kaum ein vernünftiger Weg an einer MS-CA vorbei. Dafür muss man auch nicht die absolute High-Secure Lösung aufbauen, wie ggf. für Userzertifikate.

     

    blub

  7. Hallo,

    Schau dir mal diesen Artikel an, da sind einige deiner Fragen beantwortet:

    https://technet.microsoft.com/en-us/library/hh831574.aspx

     

    Nach etwa einem Drittel des Artikels findest du eine Tabelle mit alle Cryptographic Providers. Du solltest z.b. nur einen Provider auswählen, der SHA256 unterstützt. Der Defaultwert ist OK.

     

    Auch für die anderen Fragen findest du zumindest Hinweise
    e.g. see:

    "Allow administrator interaction when the private key is accessed by the CA"

    "Establish a CA Name"

    "Verify the validity period"

     

    blub

  8. Aber eins kristaliert sich immer mehr raus:

    Alle regen sich heftigst auf, aber keiner bemüht sich um ein mehr an Sicherheit!

    Alle regen sich heftigst auf, aber keiner traut sich konsequenter zu werden ....

     

     

    Hallo Franz,

    Bitte pauschalisiere nicht ganz so generell.

     

    Ich behaupte, dass ich zwei der größten IT bzw. Microsoft-Umgebungen in Deutschland bzw. der Welt auch securitytechnisch ganz gut kenne.

    Hier beschäftigen sich ca. 300 Leute nur(!) mit dem Thema Sicherheit, u.a.

    - Beobachten des Netzes auf Befrohungen, incl. engster Zusammenarbeit mit BSI und anderen Behörden

    - Incident Response

    - Forensic

    - Crypto

    - Erstellung von Plänen zur Härtung von OS und Software

    - Audits

    etc.

     

    Dazu kommen noch die vielen IT-Mitarbeiter (Admins, etc.), die zwar nicht direkt das Thema Security ganz oben stehen haben, aber dennoch in ihren Aufgabenbereichen immer aufmerksam sind.

     

    Die deutsche Industrie (zumindest die großen Player) bemüht sich heftigst um ein mehr an IT-Sicherheit! Und im Vergleich zu unseren Freunden überm Teich sind wir in Deutschland wirklich nicht schlecht aufgestellt!

     

    blub

  9. Hallo Zahni,

    Ich kann nur von meiner Company berichtem (mehrere 10.000 Server weltweit verteilt, jeweils virtuell und physikalisch). Der Gang in die Cloud ist ein strategisches Ziel unserer IT. Etliche unserer Server stehen schon in Clouds, Dienste wie Ticketsysteme, Mailing, etc.. kommen aus der Cloud oder sind gerade in der Migration. In letzter Zeit haben wir strategische Partnerschaften mit Cloudanbietern geschlossen, etc, etc.

    Das geht alles viel schneller, als ich vor 6 Monaten noch selbst gedacht habe.

     

    Meiner Meinung nach weit mehr als nur ein Trend

     

    blub

  10. Hi,

     

    Ich habe mir mal so einen ähnlichen Code geschrieben. Vielleicht hilft er dir weiter

     

    blub

    Set-StrictMode -Version "2.0"
    Clear-Host
    
    $Path="C:\temp\"
    
    #$GroupInfos = gci -path $Path -recurse -force| Where{ $_.PSIsContainer -eq $False } | Group-Object Extension
    $GroupInfos = gci -path $Path -recurse -force -file | Group-Object Extension  ##requires PS V3.0
    
    $MyInfos = @()
    
    ForEach ($Extension in $GroupInfos ) {
      [psobject]$MyInfo = ""|Select Extension,Count,Size
      $Size = ($Extension.Group | Measure-Object -Property "Length" -Sum).Sum/1MB
      $MyInfo.Extension = $Extension.Name
      $MyInfo.Count = $Extension.Count
      $MyInfo.Size = $Size
      $MyInfos += $MyInfo
    }
    
     $MyInfos | Ft Extension,count,
        @{
        Label="FileSize in MB";
        Expression={"{0:0.00}" -f $($_.Size)};
        Align="Right"
       } -autosize
    
    
    
  11. Moin,

     

    wäre mir nicht bekannt, dass es sowas gibt. Und als Antwort für die Auditoren: Das hat mit Sicherheit herzlich wenig zu tun. Die Execution Policy ist viel sinnvoller, und dazu gibt es in CMD kein Pendant.

     

    Gruß, Nils

     

    rechte Maustaste auf die Skriptdatei -> Ausführen mit Powershell , dann interessiert Windows herzlich wenig, was in der Executionpolicy steht. Richtige Sicherheit finde ich das auch nicht.

     

    blub

  12. Hi,

    du kannst z.B. den MD5-Hash für jedes File im Source- und Destinationverzeichnis checken.

     

    AutoIt kann ich nicht, evtl. helfen dir die PS-Zeilen weiter:

    Set-StrictMode -Version "2.0"
    Clear-Host
    
    $SourcePath = "C:\temp\test.txt"
    $md5 = New-Object -TypeName System.Security.Cryptography.MD5CryptoServiceProvider
    $SourceHash = [System.BitConverter]::ToString($md5.ComputeHash([System.IO.File]::ReadAllBytes($SourcePath)))
    
    #copying c:\temp\test.txt d:\temp\test.txt
    
    $DestinationPath = "D:\temp\test.txt"
    $md5 = New-Object -TypeName System.Security.Cryptography.MD5CryptoServiceProvider
    $DestinationHash = [System.BitConverter]::ToString($md5.ComputeHash([System.IO.File]::ReadAllBytes($DestinationPath)))
    
    If($SourceHash -eq $DestinationHash){
      "Kopiervorgang erfolgreich, beide Dateien sind identisch "
    }else{
      "Dateien sind nicht identisch"
    }
    
    

    Robocopy.exe mit den Optionen /W: /R:  und /Log: ist evtl. noch besser für dich geeignet

     

    blub

  13. Also wenn du schon Visual Studio einsetzt, solltest du auch .Net in deinem Code benutzen und nicht so nen Kram wie WMI

     

    https://msdn.microsoft.com/en-us/library/system.windows.forms.screen%28v=vs.110%29.aspx

     

    Auf die Schnelle mal in Powershell

    [reflection.assembly]::loadwithpartialname("System.Windows.Forms") | Out-Null
    [System.Windows.Forms.Screen]::AllScreens
    

    blub
     

×
×
  • Neu erstellen...