elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


  Mostrar Temas
Páginas: [1]
1  Programación / Scripting / Eventos del sistema de hoy en: 28 Septiembre 2011, 16:15 pm
Hola amigos!!
estoy buscando una forma simple de poder filtrar con un script de vbs, algunos eventos de seguridad de hoy.
es posible eso?
Mil Gracias!!!

Código:
Set colEvents = objWMIService.ExecQuery _
    ("Select * from Win32_NTLogEvent Where LogFile='Security' AND (EventCode=624 or EventCode=630 or EventCode=642 or EventCode=628)")
2  Programación / Scripting / sacar permisos de un share en: 14 Junio 2011, 23:06 pm
Bunenas tardes amigos:

me darian una mano para hacer que este script sea recursivo y que busque en todas las carpetas.

un abrazo y como siempre mil gracias!!!

Option Explicit
 
Const SE_DACL_PRESENT = &h4
Const ACCESS_ALLOWED_ACE_TYPE = &h0
Const ACCESS_DENIED_ACE_TYPE  = &h1
Const FILE_ALL_ACCESS = &h1f01ff
Const FOLDER_ADD_SUBDIRECTORY = &h000004
Const FILE_DELETE = &h010000
Const FILE_DELETE_CHILD = &h000040
Const FOLDER_TRAVERSE = &h000020
Const FILE_READ_ATTRIBUTES = &h000080
Const FILE_READ_CONTROL = &h020000
Const FOLDER_LIST_DIRECTORY = &h000001
Const FILE_READ_EA = &h000008
Const FILE_SYNCHRONIZE = &h100000
Const FILE_WRITE_ATTRIBUTES = &h000100
Const FILE_WRITE_DAC = &h040000
Const FOLDER_ADD_FILE = &h000002
Const FILE_WRITE_EA = &h000010
Const FILE_WRITE_OWNER = &h080000
Const WBEM_RETURN_IMMEDIATELY = &h10
Const WBEM_FORWARD_ONLY = &h20
 
Dim objWMIService, objItem
Dim strComputer
Dim arrComputers
Dim colItems
 
Sub ReadDescriptor(strPath)
        Dim objFolderSecuritySettings, objSD, objACE
        Dim arrACEs
        Dim intControlFlags
       
        Set objFolderSecuritySettings = objWMIService.Get("Win32_LogicalFileSecuritySetting='" & strPath & "'")
        objFolderSecuritySettings.GetSecurityDescriptor objSD
       
        intControlFlags = objSD.ControlFlags
       
                If intControlFlags AND SE_DACL_PRESENT Then
                        arrACEs = objSD.DACL
                For Each objACE in arrACEs
                        WScript.StdOut.Write  "\" & objACE.Trustee.Domain & "\" & objACE.Trustee.Name

                If objACE.AccessMask AND FILE_ALL_ACCESS Then
                        WScript.StdOut.Write " FILE_ALL_ACCESS "   
         End If
                If objACE.AccessMask AND FOLDER_ADD_SUBDIRECTORY Then
                         WScript.StdOut.Write "FOLDER_ADD_SUBDIRECTORY "
                End If
                If objACE.AccessMask AND FILE_DELETE Then                       
         WScript.StdOut.Write "FILE_DELETE "                 
      End If               
      If objACE.AccessMask AND FILE_DELETE_CHILD Then                       
         WScript.StdOut.Write "FILE_DELETE_CHILD "                 
      End If               
      If objACE.AccessMask AND FOLDER_TRAVERSE Then                       
         WScript.StdOut.Write "FOLDER_TRAVERSE "
                End If
                If objACE.AccessMask AND FILE_READ_ATTRIBUTES Then
                        WScript.StdOut.Write  "FILE_READ_ATTRIBUTES "
                End If
                If objACE.AccessMask AND FILE_READ_CONTROL Then
                        WScript.StdOut.Write "FILE_READ_CONTROL "
                End If
                If objACE.AccessMask AND FOLDER_LIST_DIRECTORY Then
                        WScript.StdOut.Write "FOLDER_LIST_DIRECTORY "
                End If
                If objACE.AccessMask AND FILE_READ_EA Then
                        WScript.StdOut.Write "FILE_READ_EA "
                End If
                If objACE.AccessMask AND FILE_SYNCHRONIZE Then
                        WScript.StdOut.Write "FILE_SYNCHRONIZE "
                End If
                If objACE.AccessMask AND FILE_WRITE_ATTRIBUTES Then
                        WScript.StdOut.Write"FILE_WRITE_ATTRIBUTES "
                End If
                If objACE.AccessMask AND FILE_WRITE_DAC Then
                        WScript.StdOut.Write "FILE_WRITE_DAC "
                End If
                If objACE.AccessMask AND FOLDER_ADD_FILE Then
                        WScript.StdOut.Write "FOLDER_ADD_FILE "
                End If
                If objACE.AccessMask AND FILE_WRITE_EA Then
                        WScript.StdOut.Write "FILE_WRITE_EA "
                End If
                If objACE.AccessMask AND FILE_WRITE_OWNER Then
                        WScript.StdOut.Write "FILE_WRITE_OWNER "
                End If
                next
                Else
                        WScript.StdOut.Write "No DACL present in security descriptor" & vbCrLf
                End If
         
End Sub
 
'
' Main Code
'
Const INPUT_FILE_NAME = "C:\tools\Computers.txt"
Const FOR_READING = 1
Dim objFSO
Dim objFile
        Set objFSO = CreateObject("Scripting.FileSystemObject")
        Set objFile = objFSO.OpenTextFile(INPUT_FILE_NAME, FOR_READING)
                strComputer = objFile.ReadAll
                objFile.Close
                arrComputers = Split(strComputer, vbCrLf)
                        For Each strComputer In arrComputers                       
                        WScript.Echo strComputer
                                On Error Resume Next
                                Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
                                Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_Share WHERE Type=0", "WQL",_
                                WBEM_RETURN_IMMEDIATELY + WBEM_FORWARD_ONLY)
                               
                        For Each objItem in colItems
                                WScript.StdOut.Write objItem.Path & " "
                                ReadDescriptor objItem.Path
            WScript.Echo
                        Next
                        Set objWMIService = Nothing
                        On Error Goto 0
                Next
3  Programación / Scripting / VBS no funciona guarda eventos en: 16 Febrero 2011, 15:53 pm
Hola Amigos:

Tengo el siguiente problema con este script.
me funciona la parte de buscar y guardar un evento, pero cuando no se encuentran eventos deberia guardar en el archivo la leyenda "No se encontraron eventos." pero no lo hace, que estoy haciendo mail?

muchas Gracias!!!  :laugh:


Código
  1. 'Busca el nombre de la Pc local, de aca sacamos los eventos
  2.  
  3. Set wshShell = WScript.CreateObject( "WScript.Shell" )
  4. strComputer = wshShell.ExpandEnvironmentStrings( "%COMPUTERNAME%" )
  5.  
  6.  
  7. 'conectamos
  8.  
  9. Set objWMIService = GetObject("winmgmts:" _
  10. & "{impersonationLevel=impersonate, (Backup, Security)}!\\" _
  11. & strComputer & "\root\cimv2")
  12.  
  13. ' definimos que buscar
  14.  
  15. Set colEvents = objWMIService.ExecQuery _
  16.    ("Select * from Win32_NTLogEvent Where LogFile='Security' AND (EventCode=528 or EventCode=540)")
  17.  
  18. 'creamos el archivo que contendra el log filtrado
  19.  
  20. Set objFSO = CreateObject("Scripting.FileSystemObject")
  21. Set objFile = objFSO.CreateTextFile("C:\backup_evt\" & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & ".cvs")
  22.  
  23. 'le decimos que mostrar y en que orden
  24.  
  25. For Each objEvent in colEvents
  26.    strTimeWritten = objEvent.TimeWritten
  27.  
  28.    dtmTimeWritten = CDate(Mid(strTimeWritten, 5, 2) & "/" & _
  29.        Mid(strTimeWritten, 7, 2) & "/" & Left(strTimeWritten, 4) _
  30.            & " " & Mid (strTimeWritten, 9, 2) & ":" & _
  31.                Mid(strTimeWritten, 11, 2) & ":" & Mid(strTimeWritten, 13, 2))
  32.  
  33.    dtmDate = FormatDateTime(dtmTimeWritten, vbShortDate)
  34.    dtmTime = FormatDateTime(dtmTimeWritten, vbLongTime)
  35.  
  36.    strEvent = dtmDate & vbTab
  37.    strEvent = strEvent & dtmTime & vbTab
  38.    strEvent = strEvent & objEvent.SourceName & vbTab 'nombre
  39.    strEvent = strEvent & objEvent.Type & vbTab   'Error
  40.    strEvent = strEvent & objEvent.Category & vbTab 'categoria
  41.    strEvent = strEvent & objEvent.EventCode & vbTab 'codigo
  42.    strEvent = strEvent & objEvent.User & vbTab 'usuario
  43.    strEvent = strEvent & objEvent.ComputerName & vbTab 'maquina
  44.  
  45.  
  46. 'mensaje que avisa que no se encontraron eventos no funca
  47.  
  48.  
  49.    strDescription = objEvent.Message
  50.    If IsNull(strDescription) Then
  51.        strDescription = "No se encontraron eventos."
  52.    End If
  53.    strDescription = Replace(strDescription, vbCrLf, " ")
  54.    strEvent = strEvent & strDescription
  55.  
  56.    objFile.WriteLine strEvent
  57. Next
  58.  
  59. objFile.Close
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines