SlideShare una empresa de Scribd logo
1 de 22
Taint  Mode en Python ,[object Object],Juan José Conti [email_address] http://www.juanjoconti.com.ar
Presentación ,[object Object],[object Object],[object Object],[object Object],[object Object]
“ El objetivo de Taint Mode es alertar a los desarrolladores de potenciales problemas de seguridad en su software.”
El modelo de las manchas ,[object Object],[object Object],[object Object]
“ Si un valor manchado alcanza un sumidero sensible, entonces existe una vulnerabilidad en el programa.”
“ 42  or 1=1”
“ <script> alert('hola') </script>”
“ Si un valor con una mancha X alcanza un sumidero sensible a X, entonces existe una vulnerabilidad en el programa.”
Implementación ,[object Object],[object Object],[object Object]
dyntaint.py ,[object Object],[object Object],[object Object],[object Object],[object Object]
dyntaint.py KEYS  = [XSS, SQLI, OSI, II] =  range (4) TAINTED =  dict ([(x,  set ())  for  x  in  KEYS]) class  STR( str ): ... ,[object Object],[object Object]
Taint Flow a # manchada b # limpia c  =  a  +  b  # ahora c está manchada a * 8 a[3:10] “ esta %s limpio?” % a a.upper() a.split(',')
Valores no confiables untrusted @untrusted def  desde_el_exterior(): ... import  web web.input =  untrusted( web.input )
Valores no confiables untrusted_args class MyProtocol(LineOnlyReceiver): @untrusted_args([1]) def lineReceived(self, line): self.doSomething(line)
cleaner >>> texto_plano(&quot;Usar  <b> negrita </b> &quot;) 'Usar negrita' >>> texto_plano(&quot;Sin manchas&quot;) 'Sin manchas' @cleaner(XSS) def texto_plano(input): ... texto_plano =  cleaner(XSS) (texto_plano)
ssink eval =  ssink(II)( eval ) @ssink(II) def suma(a,b) return eval('%s + %s' % (a,b))
import web db = web.database(dbn=&quot;sqlite&quot;, db=DBNAME) db.delete =  ssink(SQLI)( db.delete ) db.select =  ssink(SQLI)( db.select ) db.insert =  ssink(SQLI)( db.insert ) ssink
Salida ============================================ Advertencia en la linea  N  del archivo  X Valor manchado:  M -------------------------------------------- if os.path.exists (f): wiki = open (f).read() doc = self.form(name, wiki) ==>   return skeleton (M) ============================================
Algunas cosas más ,[object Object],[object Object],[object Object],[object Object],[object Object]
Invitación ,[object Object],[object Object],[object Object],[object Object],[object Object]
¿Preguntas?
¡Muchas gracias! ,[object Object],[object Object],[object Object],[object Object]

Más contenido relacionado

La actualidad más candente (17)

Programa 8
Programa 8Programa 8
Programa 8
 
4 introduccion a-laprogramacionconcsharp
4 introduccion a-laprogramacionconcsharp4 introduccion a-laprogramacionconcsharp
4 introduccion a-laprogramacionconcsharp
 
Resumen claudia u5
Resumen claudia u5Resumen claudia u5
Resumen claudia u5
 
Ejemplos de estructura de control semestre 2
Ejemplos de estructura de control semestre 2Ejemplos de estructura de control semestre 2
Ejemplos de estructura de control semestre 2
 
Estructura de un programa
Estructura de un programaEstructura de un programa
Estructura de un programa
 
Instrucciones basicas-para-c++
Instrucciones basicas-para-c++Instrucciones basicas-para-c++
Instrucciones basicas-para-c++
 
Depuradores
DepuradoresDepuradores
Depuradores
 
Programa en java con el Metodo de la burbuja
Programa en java con el Metodo de la burbujaPrograma en java con el Metodo de la burbuja
Programa en java con el Metodo de la burbuja
 
Métodos en programacion
Métodos en  programacionMétodos en  programacion
Métodos en programacion
 
Informe#5
Informe#5Informe#5
Informe#5
 
06
0606
06
 
Practica 6
Practica 6Practica 6
Practica 6
 
Tarea sesion 14
Tarea sesion 14Tarea sesion 14
Tarea sesion 14
 
P2
P2P2
P2
 
Java 2
Java 2Java 2
Java 2
 
Programa 16
Programa 16Programa 16
Programa 16
 
Editable
EditableEditable
Editable
 

Destacado

Af3 649 (li1 via) - Servicio Tecnico Fagor
Af3 649 (li1 via) - Servicio Tecnico FagorAf3 649 (li1 via) - Servicio Tecnico Fagor
Af3 649 (li1 via) - Servicio Tecnico Fagorserviciotecnicofagor
 
comparateur loi-madelin07
comparateur loi-madelin07comparateur loi-madelin07
comparateur loi-madelin074copybridge
 
Copia de handbook español web
Copia de handbook español webCopia de handbook español web
Copia de handbook español webFitira
 
La mutuelle sante Loi Madelin
La mutuelle sante Loi MadelinLa mutuelle sante Loi Madelin
La mutuelle sante Loi Madelinveincold6
 
windows server 2012 e windows 8 = melhores juntos
windows server 2012 e windows 8 = melhores juntoswindows server 2012 e windows 8 = melhores juntos
windows server 2012 e windows 8 = melhores juntosFabio Hara
 
Software Assurance Services im Überblick
Software Assurance Services im ÜberblickSoftware Assurance Services im Überblick
Software Assurance Services im ÜberblickMicrosoft Österreich
 
DREES : la solidarité dans les complémentaires santé
DREES : la solidarité dans les complémentaires santéDREES : la solidarité dans les complémentaires santé
DREES : la solidarité dans les complémentaires santéSociété Tripalio
 
Ideas 4 Change - entendendo o mercado
Ideas 4 Change - entendendo o mercadoIdeas 4 Change - entendendo o mercado
Ideas 4 Change - entendendo o mercadoTroposlab
 
Complémentaire santé: note des économistes atterrés
Complémentaire santé: note des économistes atterrésComplémentaire santé: note des économistes atterrés
Complémentaire santé: note des économistes atterrésSociété Tripalio
 
Selling sa to_smb_field_100 (2)
Selling sa to_smb_field_100 (2)Selling sa to_smb_field_100 (2)
Selling sa to_smb_field_100 (2)Fitira
 
IDCC 733 Avenant n°86 a l'accord du 12 octobre 2015
IDCC 733 Avenant n°86  a l'accord du 12 octobre 2015IDCC 733 Avenant n°86  a l'accord du 12 octobre 2015
IDCC 733 Avenant n°86 a l'accord du 12 octobre 2015Société Tripalio
 
TDC 2015 - 1 QA num mar de Devs - Resultados Digitais - Quality Assurance
TDC 2015 - 1 QA num mar de Devs -  Resultados Digitais - Quality AssuranceTDC 2015 - 1 QA num mar de Devs -  Resultados Digitais - Quality Assurance
TDC 2015 - 1 QA num mar de Devs - Resultados Digitais - Quality AssuranceFausto Siqueira
 
ALFA TRALL Quality Assurance
ALFA TRALL Quality Assurance ALFA TRALL Quality Assurance
ALFA TRALL Quality Assurance ALFA-TRALL
 
Fiche de paye 2016 CHF H'MONTPELLIER'C
Fiche de paye 2016 CHF H'MONTPELLIER'CFiche de paye 2016 CHF H'MONTPELLIER'C
Fiche de paye 2016 CHF H'MONTPELLIER'CFabrice CLAMAGIRAND
 

Destacado (20)

Af3 649 (li1 via) - Servicio Tecnico Fagor
Af3 649 (li1 via) - Servicio Tecnico FagorAf3 649 (li1 via) - Servicio Tecnico Fagor
Af3 649 (li1 via) - Servicio Tecnico Fagor
 
comparateur loi-madelin07
comparateur loi-madelin07comparateur loi-madelin07
comparateur loi-madelin07
 
Youth Mode - Marketing Digital
Youth Mode - Marketing DigitalYouth Mode - Marketing Digital
Youth Mode - Marketing Digital
 
Copia de handbook español web
Copia de handbook español webCopia de handbook español web
Copia de handbook español web
 
La mutuelle sante Loi Madelin
La mutuelle sante Loi MadelinLa mutuelle sante Loi Madelin
La mutuelle sante Loi Madelin
 
windows server 2012 e windows 8 = melhores juntos
windows server 2012 e windows 8 = melhores juntoswindows server 2012 e windows 8 = melhores juntos
windows server 2012 e windows 8 = melhores juntos
 
Software Assurance Services im Überblick
Software Assurance Services im ÜberblickSoftware Assurance Services im Überblick
Software Assurance Services im Überblick
 
DREES : la solidarité dans les complémentaires santé
DREES : la solidarité dans les complémentaires santéDREES : la solidarité dans les complémentaires santé
DREES : la solidarité dans les complémentaires santé
 
Bien comprendre et bien choisir votre complémentaire santé
Bien comprendre et bien choisir votre complémentaire santéBien comprendre et bien choisir votre complémentaire santé
Bien comprendre et bien choisir votre complémentaire santé
 
Ideas 4 Change - entendendo o mercado
Ideas 4 Change - entendendo o mercadoIdeas 4 Change - entendendo o mercado
Ideas 4 Change - entendendo o mercado
 
Complémentaire santé: note des économistes atterrés
Complémentaire santé: note des économistes atterrésComplémentaire santé: note des économistes atterrés
Complémentaire santé: note des économistes atterrés
 
Selling sa to_smb_field_100 (2)
Selling sa to_smb_field_100 (2)Selling sa to_smb_field_100 (2)
Selling sa to_smb_field_100 (2)
 
Paty-Aguilera-book2015
Paty-Aguilera-book2015Paty-Aguilera-book2015
Paty-Aguilera-book2015
 
Youth mode
Youth modeYouth mode
Youth mode
 
Presentacion para evento Microsft - DHS
Presentacion para evento Microsft - DHSPresentacion para evento Microsft - DHS
Presentacion para evento Microsft - DHS
 
IDCC 733 Avenant n°86 a l'accord du 12 octobre 2015
IDCC 733 Avenant n°86  a l'accord du 12 octobre 2015IDCC 733 Avenant n°86  a l'accord du 12 octobre 2015
IDCC 733 Avenant n°86 a l'accord du 12 octobre 2015
 
TDC 2015 - 1 QA num mar de Devs - Resultados Digitais - Quality Assurance
TDC 2015 - 1 QA num mar de Devs -  Resultados Digitais - Quality AssuranceTDC 2015 - 1 QA num mar de Devs -  Resultados Digitais - Quality Assurance
TDC 2015 - 1 QA num mar de Devs - Resultados Digitais - Quality Assurance
 
Políticas e estratégias internacionais em segurança cibernética
Políticas e estratégias internacionais em segurança cibernéticaPolíticas e estratégias internacionais em segurança cibernética
Políticas e estratégias internacionais em segurança cibernética
 
ALFA TRALL Quality Assurance
ALFA TRALL Quality Assurance ALFA TRALL Quality Assurance
ALFA TRALL Quality Assurance
 
Fiche de paye 2016 CHF H'MONTPELLIER'C
Fiche de paye 2016 CHF H'MONTPELLIER'CFiche de paye 2016 CHF H'MONTPELLIER'C
Fiche de paye 2016 CHF H'MONTPELLIER'C
 

Similar a Taint Mode en Python (20)

A1 u1-16230227
A1 u1-16230227A1 u1-16230227
A1 u1-16230227
 
Instituto tecnológico particular
Instituto tecnológico particularInstituto tecnológico particular
Instituto tecnológico particular
 
Encuentro Linux 2011
Encuentro Linux 2011Encuentro Linux 2011
Encuentro Linux 2011
 
Introduccion Lenguaje C Blanca
Introduccion Lenguaje  C BlancaIntroduccion Lenguaje  C Blanca
Introduccion Lenguaje C Blanca
 
JAVA.PPT
JAVA.PPTJAVA.PPT
JAVA.PPT
 
JAVA (1).PPT
JAVA (1).PPTJAVA (1).PPT
JAVA (1).PPT
 
JAVA (1).PPT
JAVA (1).PPTJAVA (1).PPT
JAVA (1).PPT
 
TUTORIAL JAVA
TUTORIAL JAVATUTORIAL JAVA
TUTORIAL JAVA
 
Lo básico para programar
Lo básico para programarLo básico para programar
Lo básico para programar
 
Introduccion a c++
Introduccion a c++Introduccion a c++
Introduccion a c++
 
Unmsm03 2008
Unmsm03 2008Unmsm03 2008
Unmsm03 2008
 
05 sentencias basicas
05 sentencias basicas05 sentencias basicas
05 sentencias basicas
 
Lo básico para programar
Lo básico para programarLo básico para programar
Lo básico para programar
 
El lenguaje c
El lenguaje cEl lenguaje c
El lenguaje c
 
Introduccion a C++.pdf
Introduccion a C++.pdfIntroduccion a C++.pdf
Introduccion a C++.pdf
 
Lenguajecviviana
LenguajecvivianaLenguajecviviana
Lenguajecviviana
 
Seguridad En Programación
Seguridad En ProgramaciónSeguridad En Programación
Seguridad En Programación
 
Securizando por construcción mediante MDE
Securizando por construcción mediante MDESecurizando por construcción mediante MDE
Securizando por construcción mediante MDE
 
Algoritmo En Programa
Algoritmo En ProgramaAlgoritmo En Programa
Algoritmo En Programa
 
C sharp intro0
C sharp intro0C sharp intro0
C sharp intro0
 

Último

La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramDIDIERFERNANDOGUERRE
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 

Último (20)

La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ram
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 

Taint Mode en Python

  • 1.
  • 2.
  • 3. “ El objetivo de Taint Mode es alertar a los desarrolladores de potenciales problemas de seguridad en su software.”
  • 4.
  • 5. “ Si un valor manchado alcanza un sumidero sensible, entonces existe una vulnerabilidad en el programa.”
  • 6. “ 42 or 1=1”
  • 8. “ Si un valor con una mancha X alcanza un sumidero sensible a X, entonces existe una vulnerabilidad en el programa.”
  • 9.
  • 10.
  • 11.
  • 12. Taint Flow a # manchada b # limpia c = a + b # ahora c está manchada a * 8 a[3:10] “ esta %s limpio?” % a a.upper() a.split(',')
  • 13. Valores no confiables untrusted @untrusted def desde_el_exterior(): ... import web web.input = untrusted( web.input )
  • 14. Valores no confiables untrusted_args class MyProtocol(LineOnlyReceiver): @untrusted_args([1]) def lineReceived(self, line): self.doSomething(line)
  • 15. cleaner >>> texto_plano(&quot;Usar <b> negrita </b> &quot;) 'Usar negrita' >>> texto_plano(&quot;Sin manchas&quot;) 'Sin manchas' @cleaner(XSS) def texto_plano(input): ... texto_plano = cleaner(XSS) (texto_plano)
  • 16. ssink eval = ssink(II)( eval ) @ssink(II) def suma(a,b) return eval('%s + %s' % (a,b))
  • 17. import web db = web.database(dbn=&quot;sqlite&quot;, db=DBNAME) db.delete = ssink(SQLI)( db.delete ) db.select = ssink(SQLI)( db.select ) db.insert = ssink(SQLI)( db.insert ) ssink
  • 18. Salida ============================================ Advertencia en la linea N del archivo X Valor manchado: M -------------------------------------------- if os.path.exists (f): wiki = open (f).read() doc = self.form(name, wiki) ==> return skeleton (M) ============================================
  • 19.
  • 20.
  • 22.