send
Grupo de Telegram
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.

Tools Python CGI + Source | JaAViEr::0x5d

  • 5 Respuestas
  • 1764 Vistas

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

Desconectado JaAViEr

  • *
  • Underc0der
  • Mensajes: 163
  • Actividad:
    0%
  • Reputación 0
  • http://codigo.ga
    • Ver Perfil
    • Blog de Programación :: Python
« en: Abril 23, 2013, 10:13:29 pm »
Hola, buen día damas y caballeros :P.

En esta ocasión vengo a mostrar el código de fuente de unas aplicaciones que pasé a Python CGI , para poder ejecutarlas en el servidor y no depender de una maquina con Python instalado...


Sus respectivos códigos de fuente...
De/Codificador Base64:
Código: Python
  1. #!/usr/bin/python
  2. #Autor: 0x5d::JaAViEr
  3. #Twitter: @0x5d
  4. import cgi, os, base64
  5.  
  6. def form_inicial():
  7.         form_html = '''
  8.         <form action="" method="POST">
  9.                 <textarea name="content"></textarea><br />
  10.                 <select name="option">
  11.                         <option value="encode">Codificar</option>
  12.                         <option value="decode">Decodificar</option>
  13.                 </select><br />
  14.                 <input type="Submit" value="Enviar"><br />
  15.                 Creado bajo Python CGI.<br />
  16.                 Autor : JaAViEr (0x5d)
  17.         </form>'''
  18.         return base("De/Codificar Base64", form_html)
  19.  
  20. def base(title, content):
  21.         code = '''
  22.         <div class="ui-widget-content">
  23. <div class="ui-widget-header">%s</div>
  24. %s
  25. </div>
  26. '''%(title, content)
  27.         return code
  28.  
  29. print "content-type:text/html\r\n\r\n"
  30.  
  31. print '''
  32. <title>De/Codificador Base64</title>
  33. <script src="http://code.jquery.com/jquery-latest.js"></script>
  34. <link rel="stylesheet" href="http://code.jquery.com/ui/1.9.1/themes/cupertino/jquery-ui.css" />
  35. <script src="http://code.jquery.com/ui/1.9.1/jquery-ui.js"></script>
  36. <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css" />
  37. <style>
  38. div {
  39.         text-align:center;
  40.         font-size:0.5cm;
  41.         }
  42. input, select {
  43.         height:0.7cm;
  44.         font-size:0.4cm;
  45. }
  46. </style>
  47. '''
  48.  
  49. form = cgi.FieldStorage()
  50. opcion = form.getvalue("option")
  51. texto = form.getvalue("content")
  52. method = os.environ['REQUEST_METHOD']
  53. if method == "POST":
  54.         if opcion:
  55.                 if opcion == "encode":
  56.                         print form_inicial()
  57.                         print base("Salida", "<textarea>"+cgi.escape(base64.b64encode(texto))+"</textarea>")
  58.                 elif opcion == "decode":
  59.                         print form_inicial()
  60.                         print base("Salida", "<textarea>"+cgi.escape(base64.b64decode(texto))+"</textarea>")
  61.                 else:
  62.                         print form_inicial()
  63.                         print base("Error", "Opción incorrecta")
  64.         else:
  65.                 print form_inicial()
  66.                 print base("Error", "Por favor selecciona una opción")
  67. else:
  68.         print form_inicial()
  69.  
  70.  
Cifrar Rot13 / Atbash:
Código: Python
  1. #!/usr/bin/python
  2. #Autor: 11Sep
  3. #To CGI: 0x5d::JaAViEr
  4. #Twitter: @0x5d
  5. import cgi, os
  6.  
  7. def  formulario_inicial():
  8.         form_html = '''
  9.         <form action="" method="POST">
  10.         Data: <br/>
  11.         <textarea name="contenido"></textarea><br />
  12.         <select name="opcion">
  13.         <option value="rot13">ROT13</option>
  14.         <option value="atbash">Atbash</option>
  15.         </select><br />
  16.         <input type="Submit"><br/>
  17.         Programado por <b>11Sep</b><br />
  18.         Programado en CGI por <b>JaAViEr::0x5d</b>
  19.         </form>
  20.         '''
  21.         return base("Cifrar Rot13/Atbash", form_html)
  22.  
  23. def base(title, content):
  24.         code = '''
  25.         <div class="ui-widget-content">
  26. <div class="ui-widget-header">%s</div>
  27. %s
  28. </div>
  29. '''%(title, content)
  30.         return code
  31.  
  32. def rot13(palabra):
  33.     Cifrado = ''
  34.     for i in palabra:
  35.         buff = ord(i)
  36.         if (buff >= 65 and buff <= 90) or (buff >= 97 and buff <= 122):
  37.             if ((buff + 13 > 90 and buff + 13 <= 103) or (buff + 13 > 122 and buff + 13 <= 135)):
  38.                 Cifrado += chr(buff -13)
  39.             else:
  40.                 Cifrado += chr(buff + 13)
  41.     return Cifrado
  42.    
  43. def atbash(palabra):
  44.     V1 = "abcdefghijklm"
  45.     V2 = "zyxwvutsrqpon"
  46.    
  47.     Buff = ""
  48.    
  49.     for i in range(len(palabra)):
  50.         for a in range(len(V1)):
  51.             if V1[a] == palabra[i]:
  52.                 Buff += V2[a]
  53.             elif V2[a] == palabra[i]:
  54.                 Buff += V1[a]
  55.     return Buff
  56.  
  57. print "content-type:text/html\r\n\r\n"
  58. print '''
  59. <title>Cifrar Rot13/Atbash 11Sep::JaAViEr</title>
  60. <script src="http://code.jquery.com/jquery-latest.js"></script>
  61. <link rel="stylesheet" href="http://code.jquery.com/ui/1.9.1/themes/blitzer/jquery-ui.css" />
  62. <script src="http://code.jquery.com/ui/1.9.1/jquery-ui.js"></script>
  63. <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css" />
  64. <style>
  65. div {
  66.         text-align:center;
  67.         font-size:0.5cm;
  68.         }
  69. input, select {
  70.         height:0.7cm;
  71.         font-size:0.4cm;
  72. }
  73. </style>
  74. '''
  75. form = cgi.FieldStorage()
  76. method = os.environ['REQUEST_METHOD']
  77. contenido = form.getvalue("contenido")
  78. opcion = form.getvalue("opcion")
  79. if method == "POST":
  80.         if opcion:
  81.                 if opcion == "rot13":
  82.                         print formulario_inicial()
  83.                         print base("Salida", "<textarea>"+rot13(contenido)+"</textarea>")
  84.                 elif opcion == "atbash":
  85.                         print formulario_inicial()
  86.                         print base("Salida", "<textarea>"+atbash(contenido)+"</textarea>")
  87.                 else:
  88.                         print formulario_inicial()
  89.                         print base("ERROR","Opción inválida")
  90. else:
  91.         print formulario_inicial()
Enviar peticiones POST:
Código: Python
  1. #!/usr/bin/python
  2. #Autor: 0x5d::JaAViEr
  3. #Twitter: @0x5d
  4. import cgi, os, urllib, sys
  5.  
  6. def base(title, content):
  7.         code = '''
  8.         <div class="ui-widget-content">
  9. <div class="ui-widget-header">%s</div>
  10. %s
  11. </div>
  12. '''%(title, content)
  13.         return code
  14.  
  15. print "content-type:text/html\r\n\r\n"
  16. print '''
  17. <title>Enviar datos POST online :: JaAViEr(0x5d)</title>
  18. <script src="http://code.jquery.com/jquery-latest.js"></script>
  19. <link rel="stylesheet" href="http://code.jquery.com/ui/1.9.1/themes/cupertino/jquery-ui.css" />
  20. <script src="http://code.jquery.com/ui/1.9.1/jquery-ui.js"></script>
  21. <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css" />
  22. <style>
  23. div {
  24.         text-align:center;
  25.         font-size:0.5cm;
  26.         }
  27. input, select {
  28.         height:0.7cm;
  29.         font-size:0.4cm;
  30. }
  31. </style>
  32. '''
  33. form = cgi.FieldStorage()
  34. method = os.environ['REQUEST_METHOD']
  35. campos = form.getvalue("campos")
  36. valores = form.getvalue("valores")
  37. url = form.getvalue("url")
  38. if method == "POST":
  39.         dic = {}
  40.         if not "http://" in url:
  41.           print base("ERROR!","No se puede conectar a %s<br/><a href='send_post.py'>Volver</a>"%cgi.escape(url))
  42.           sys.exit(1)
  43.         if len(campos)>0 and len(valores)>0:
  44.                 for d,i in zip(campos.split(),valores.split(":-:")):
  45.                         dic['%s'%d] = i
  46.                 try:
  47.                         print urllib.urlopen(url, urllib.urlencode(dic)).read()
  48.                 except:
  49.                         print "No se puede conectar a", cgi.escape(url)
  50. else:
  51.         form_html = '''
  52.         <form action="" method="POST">
  53.         URL: <input type="Text" name="url" value="http://"><br />
  54.         Campos (separados por un espacio): <input type="Text" name="campos"><br />
  55.         Campos (separados por ":-:"): <input type="Text" name="valores"><br />
  56.         <input type="Submit"><br/>
  57.         Funcionando bajo Python CGI<br />
  58.         Author: <u>JaAViEr::0x5d</u>
  59.         </form>
  60.         '''
  61.         print base("ENVIAR DATOS POR POST", form_html)
  62.         form_example = '''
  63.         URL: <input type="Text" name="url" value="http://web.com/login.php" disabled><br />
  64.         Campos (separados por un espacio): <input type="Text" name="campos" value="user password" disabled><br />
  65.         Campos (separados por ":-:"): <input type="Text" name="valores" value="0x5d:-:miclave123" disabled><br />
  66.         <input type="Submit" onclick=alert("TEST");><br/>
  67.         '''
  68.         print base("Ejemplo de uso", form_example)

Fuente: You are not allowed to view links. Register or Login
   
Saludos , Javier.
« Última modificación: Mayo 03, 2014, 11:20:32 am por Flemon »
You are not allowed to view links. Register or Login

Desconectado Once

  • *
  • Underc0der
  • Mensajes: 383
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • El blog de Once
  • Twitter: @don_once
« Respuesta #1 en: Abril 23, 2013, 11:34:19 pm »
Muy bueno brother, le tengo que hechar un vistazo al módulo CGI.

Saludos!






You are not allowed to view links. Register or Login

Desconectado Sanko

  • *
  • Underc0der
  • Mensajes: 541
  • Actividad:
    0%
  • Reputación 0
  • ¿Puedes?
    • Ver Perfil
    • Underc0de
« Respuesta #2 en: Abril 24, 2013, 02:29:47 am »
Buena hermano.
Sigueme en Twitter : @Sankosk
Estos nuevos staff no tienen puta idea XD

Desconectado JaAViEr

  • *
  • Underc0der
  • Mensajes: 163
  • Actividad:
    0%
  • Reputación 0
  • http://codigo.ga
    • Ver Perfil
    • Blog de Programación :: Python
« Respuesta #3 en: Abril 24, 2013, 10:32:57 am »
You are not allowed to view links. Register or Login
Muy bueno brother, le tengo que hechar un vistazo al módulo CGI.

Saludos!
Es muy interesante, tienes las mismas opciones que PHP , pero con la belleza de Python :D
You are not allowed to view links. Register or Login
Buena hermano.
Muchas Gracias !
Saludos.
« Última modificación: Abril 24, 2013, 10:35:32 am por JaAViEr »
You are not allowed to view links. Register or Login

Desconectado BigBear

  • *
  • Underc0der
  • Mensajes: 544
  • Actividad:
    0%
  • Reputación 3
    • Ver Perfil
« Respuesta #4 en: Abril 24, 2013, 10:42:56 am »
buena bro yo tambien hice algo asi en perl.

Desconectado JaAViEr

  • *
  • Underc0der
  • Mensajes: 163
  • Actividad:
    0%
  • Reputación 0
  • http://codigo.ga
    • Ver Perfil
    • Blog de Programación :: Python
« Respuesta #5 en: Abril 24, 2013, 10:46:27 am »
You are not allowed to view links. Register or Login
buena bro yo tambien hice algo asi en perl.
Wow con CGI ? Genial, he visto perl CGI, pero como no soy amigo de Perl ni una entendí :(
You are not allowed to view links. Register or Login

 

¿Te gustó el post? COMPARTILO!



[Código] Yardas a metros - Metros a yardas [Python]

Iniciado por LucaSthefano

Respuestas: 0
Vistas: 1142
Último mensaje Mayo 29, 2011, 01:27:34 am
por LucaSthefano
[Código] Entero / No Entero [Ejercicio - Python]

Iniciado por LucaSthefano

Respuestas: 0
Vistas: 1097
Último mensaje Mayo 29, 2011, 01:24:09 am
por LucaSthefano
Python Trojan - By "bLiNdFiR3"

Iniciado por d33k40

Respuestas: 1
Vistas: 1751
Último mensaje Abril 03, 2010, 11:01:59 pm
por Dharok
Python phpmyadmin "BruteForce"

Iniciado por linkgl

Respuestas: 2
Vistas: 2184
Último mensaje Agosto 19, 2011, 12:14:37 pm
por linkgl
Python keylogger - by "bLiNdFiR3"

Iniciado por d33k40

Respuestas: 0
Vistas: 1727
Último mensaje Abril 07, 2010, 03:30:22 am
por d33k40