comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

PoC incrementString [base para bruteforce]

  • 0 Respuestas
  • 1098 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado blozzter

  • *
  • Underc0der
  • Mensajes: 106
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • blozzter-blz
« en: Octubre 24, 2011, 09:32:58 pm »
hay más de una manera de como hacer la famosa función IncrementString cuyo objetivo es ir alterando/generando una cadena de texto basándose en reglas que lo que buscan es generar la palabra siguiente a la de referencia. tras ver algunos códigos de dicha estaban algo enredados decidí hacer la mía.

no es una función final, ya que falta incluir símbolos, números y mayúsculas. actualmente solo trabaja con letras (minúsculas)

Código: Python
  1. # función que toma una cadena e incrementa en 1 su valor
  2. # base para un bruteforce
  3. # blozzter || blozzter@hotmail.com
  4. # mitm.cl  [+]  hackxcrack.com  [+]  portalhacker.net
  5.  
  6. def IncrementString(String):
  7.     if not String.isalpha(): #definimos la salida en caso de error.
  8.         raise ValueError, "la cadena debe ser alfabetica solamente"
  9.        
  10.     LastChar = String[-1] #tomo el ultimo caracter
  11.     if LastChar != 'z':
  12.         NewChar = chr(ord(LastChar) + 1)
  13.         NewString = String[:-1] + NewChar #dejamos igual pero aumentamos en uno la ultima letra
  14.     else:
  15.         NewString = ""
  16.         String = String[::-1] #invierto la cadena para trabajar con mas comodidad
  17.         if String == len(String)*'z': #si la cadena contiene solo z's devuelvo solo a's
  18.                 NewString = (len(String) + 1) * 'a'
  19.         else:
  20.             for i in range(len(String)):
  21.                 if String[i] == 'z': #las z's del final se convierten a a's
  22.                     NewString += 'a'
  23.                 else:
  24.                     NewString += chr(ord(String[i]) + 1)  #aumentamos en 1 la letra que sigue
  25.                     NewString += String[i+1:] #el lo pasamos tal cual
  26.                     NewString = NewString[::-1] #volvemos a invertir
  27.                     break #finalizamos el ciclo
  28.     return NewString
  29.  

salidas:

Código: Python
  1. >>> print IncrementString('a')
  2. b
  3. >>> print IncrementString('z')
  4. aa
  5. >>> print IncrementString('am')
  6. an
  7. >>> print IncrementString('az')
  8. ba
  9. >>> print IncrementString('zza')
  10. zzb
  11. >>> print IncrementString('zzzz')
  12. aaaaa
  13. >>> print IncrementString('aaaz')
  14. aaba


saludos
« Última modificación: Enero 25, 2013, 07:46:54 pm por 11Sep »
¡< blozzter >!

 

¿Te gustó el post? COMPARTILO!



[Python] Mini clase para enviar datos POST - JaAViEr

Iniciado por JaAViEr

Respuestas: 0
Vistas: 1681
Último mensaje Diciembre 08, 2011, 05:24:26 am
por JaAViEr
Como crear un ejecutable [.exe] de Python para poderlo ejecutar en Windows

Iniciado por [Z]tuX

Respuestas: 2
Vistas: 5211
Último mensaje Mayo 28, 2011, 12:18:29 pm
por Gh0st.C
script en python para envio de mail con cuenta en gmail

Iniciado por StepClose

Respuestas: 3
Vistas: 1102
Último mensaje Junio 12, 2018, 03:09:03 am
por master_bin
Rifap - Un script para reunir la informacion de un telefono en mas de 232 paises

Iniciado por DtxdF

Respuestas: 4
Vistas: 1139
Último mensaje Julio 05, 2018, 02:34:56 am
por DtxdF
[VIDEOTUTORIAL] UAlicante - Curso Python para científicos e ingenieros

Iniciado por graphixx

Respuestas: 1
Vistas: 1857
Último mensaje Junio 25, 2016, 06:41:33 am
por OLM