Hola a todos, os explico y más que nada os pido opinion y consejo... :)
Haciendo pruebas me di cuenta que no puede haber un archivo y una carpeta con el mismo nombre, a raiz de eso se me ocurrio esto:
Option Explicit
Dim Rec As String, Aut As String
Dim Aviso As Boolean
Dim Fso As Object
Private Sub Command1_Click()
On Error Resume Next
With Fso
If Not .DriveExists Then MsgBox "La unidad no está disponible", vbCritical, "USB Vaccination": Exit Sub
Rec = Drive1.Drive & "\RECYCLER"
Aut = Drive1.Drive & "\autorun.inf"
If .FileExists(Aut) Then .DeleteFile Aut: MsgBox "Archivo sospechoso : " & Aut, vbCritical, "USB Vaccination"
If .FolderExists(Rec) Then .DeleteFile Rec: MsgBox "Carpeta sospechosa : " & Rec, vbCritical, "USB Vaccination"
If Not .FolderExists(Aut) Then
.CreateFolder Aut: SetAttr Aut, vbHidden: SetAttr Aut, vbReadOnly
MsgBox "Se creara carpeta " & Aut
Else
Aviso = True
End If
If Not .FileExists(Rec) Then
Open Rec For Output As #1: Close: SetAttr Rec, vbHidden: SetAttr Rec, vbReadOnly
MsgBox "Se creara archivo " & Rec
Else
Aviso = True
End If
End With
If Aviso Then
MsgBox "El USB " & Drive1.Drive & " ya estaba vacunado", vbCritical, "USB Vaccination"
Else
MsgBox "El USB " & Drive1.Drive & " se ha vacunado con éxito", vbInformation, "USB Vaccination"
End If
End Sub
Private Sub Form_Load()
Set Fso = CreateObject("Scripting.FileSystemObject")
Me.Caption = "USB Vaccination"
Command1.Caption = "Vacunar"
End Sub
No se si es una tonteria y no vale para nada, solo se me ocurrio la idea... :P
Lo llevo usando un tiempo con mi lapiz metiendolo en ordenadores que se que estan infectados y el resultado ha sido bastante bueno... :smiley
Salu2! ;)
Siento decirte que has llegado tarde, hay 500 programas así. (yo hice uno en su dia que ni publique, solo algun que otro usuario lo ha visto)
Por otra parte, decir que este metodo, aunque tubo mucha popularidad no sirve en todos los casos ya que cualquier malware programado, puede tener una funcion que borre cualquier archivo autorun.inf o directorio llamado Recycler, etc...
Muchísimos los borran así que solo serviria para algun caso particular y llevo 2 años diciendo lo mismo y la gente se siente segura con eso. De todas formas buen trabajo si lo has descubierto, yo lo leí por algún blog o web en su dia.
Vaya, gracias por la informacion... :)
Y si, lo descubri yo solo, por accidente, llame un archivo y una carpeta igual y me dio error... :-\
Sabrias decirme otra manera o ejemplo más efctivo de vacunarlo?¿ :huh:
Salu2 y gracias! ;)
La forma mas efectiva y sencilla de proteger tus PenDrives de gusanitos es esta:
http://foro.elhacker.net/seguridad/removable_drive_autorun_protector_rdapcmd-t244992.0.html
El codigo esta bastante mal...
Por ejemplo:
If Not .driveexits Then MsgBox "La unidad no está disponible", vbCritical, "USB Vaccination": Exit Sub
El metodo ".driveexits" no existe :laugh: :laugh:
Menos mal que has puesto el "On error resumen next" si no el codigo no funcionaria >:D :xD :xD
Cita de: Karcrack en 20 Mayo 2010, 22:28 PM
La forma mas efectiva y sencilla de proteger tus PenDrives de gusanitos es esta:
http://foro.elhacker.net/seguridad/removable_drive_autorun_protector_rdapcmd-t244992.0.html
El codigo esta bastante mal...
Por ejemplo:
If Not .driveexits Then MsgBox "La unidad no está disponible", vbCritical, "USB Vaccination": Exit Sub
El metodo ".driveexits" no existe :laugh: :laugh:
Menos mal que has puesto el "On error resumen next" si no el codigo no funcionaria >:D :xD :xD
AJAJAJJAJAJAJ :laugh: :laugh: :laugh: :laugh:
No me di cuenta, no se porque me sonaba que se podia poner, y como no me daba error pues ala.... :xD
Voy a exhar un vistazo a lo que me has dado
Una vez más :
Gracias
Karcrack! ;D
EDITO: Mira, buscando un poco he encontrado esto:
http://www.builderau.com.au/program/windows/soa/VB6-FileSystemObject-helps-in-locating-files/0,339024644,320271410,00.htm
Citar
DriveExists:
Checks whether a drive exists
If fso.DriveExists("D") Then
MsgBox "Drive D found"
End If
:silbar:
No existe ".driveexits"... por el contrario SI existe ".DriveExists" ;)
http://msdn.microsoft.com/en-us/library/6kxy1a51(VS.85).aspx
MOD:
Mejor sera que uses la propiedad IsReady() del objeto Drive para comprobar que sea accesible en vez de DriveExists()
Function ShowDriveList
Dim fso, d, dc, s, n
Set fso = CreateObject("Scripting.FileSystemObject")
Set dc = fso.Drives
For Each d in dc
n = ""
s = s & d.DriveLetter & " - "
If d.DriveType = 3 Then
n = d.ShareName
ElseIf d.IsReady Then
n = d.VolumeName
Else
n = "[Drive not ready]"
End If
s = s & n & "<BR>"
Next
ShowDriveList = s
End Function
http://msdn.microsoft.com/en-us/library/x0s9y250(v=VS.85).aspx
Perfecto, no volvera ha pasar... ;)
Gracias tio! :P
Salu2!
hay una forma extra para proteger los PendDriver y es hacer crear un nuevo valor en el registro de windows:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\StorageDevicePolicie
creando un nuevo valor variable directiva bueno como deseen llamarlo
WriteProtect
y establecer este en valor 1
Reiniciar e PC y listo con eso ya no pueden escribir en la PenDrive
P.D.: aqun que es algo tedioso es lo que hacia en mis preparatorias y lugar de trabajo o cualquier pc ajena para evitar que se colaran lo virus y difuminaran estos en mi PenDrive sin permiso mio.
Dulce Infierno Lunar!¡.
Si, habia oido algo al respecto... :P
Gracias por el apunte... ;)
... Y si haces eso como escribes tu en tu propio PenDrive de forma legitima? :-\
Cita de: Karcrack en 27 Mayo 2010, 14:30 PM
... Y si haces eso como escribes tu en tu propio PenDrive de forma legitima? :-\
yo lo hago solo para llevar y consultar datos mas no para traerme si este fuese el caso seria por
FTPDulces Lunas!¡.
en windows 7 no funciona el autorun.inf :D
Es verdad... :-( :-( :-( :-( :-( :-( :-(
http://www.genbeta.com/sistemas-operativos/adios-a-autoruninf-en-windows-7
wiiii que felicidad, Puedo ser Util :D
Open Rec For Output As #1: Close: SetAttr Rec, vbHidden: SetAttr Rec, vbReadOnly
eso asi solamente dejaria el archivo como Read Only y no como oculto.
para que ande es asi:
SetAttr Rec, vbHidden OR vbReadOnly OR vbSystem
(lo de sistem lo agregue yo porque tambien le añade un poco de seguridad.
Saludos :D
Gracias, no me habia dado cuenta... ;)