├── video.mp4 ├── video2.mp4 ├── video3.mp4 ├── index.html ├── badssl.py ├── server.pem └── key.pem /video.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diracdeltas/badssl/main/video.mp4 -------------------------------------------------------------------------------- /video2.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diracdeltas/badssl/main/video2.mp4 -------------------------------------------------------------------------------- /video3.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diracdeltas/badssl/main/video3.mp4 -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /badssl.py: -------------------------------------------------------------------------------- 1 | import http.server 2 | import ssl 3 | 4 | server_address = ('localhost', 4443) 5 | httpd = http.server.HTTPServer(server_address, http.server.SimpleHTTPRequestHandler) 6 | httpd.socket = ssl.wrap_socket(httpd.socket, 7 | server_side=True, 8 | certfile="server.pem", 9 | keyfile="key.pem", 10 | ssl_version=ssl.PROTOCOL_TLS) 11 | httpd.serve_forever() 12 | -------------------------------------------------------------------------------- /server.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDoTCCAomgAwIBAgIUUsoAIJg4Vabzyz7QJPyvtyL6SvEwDQYJKoZIhvcNAQEL 3 | BQAwYDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExFjAUBgNVBAcM 4 | DVNhbiBGcmFuY2lzY28xDjAMBgNVBAoMBUJyYXZlMRQwEgYDVQQDDAthenVraS5s 5 | b2NhbDAeFw0yMzEwMTExODE2MzdaFw0yNDEwMTAxODE2MzdaMGAxCzAJBgNVBAYT 6 | AlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQHDA1TYW4gRnJhbmNpc2Nv 7 | MQ4wDAYDVQQKDAVCcmF2ZTEUMBIGA1UEAwwLYXp1a2kubG9jYWwwggEiMA0GCSqG 8 | SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDvCJeRR+igH/Ua3gPJKm3Dl+zI37uh99uY 9 | 2SGqRkkbirzckEV7xcPT4rbUu4+S/fbWJYKDAQGzHtlrK8+Hc2Q0PWAbRzXrU7KB 10 | Dt5N8MiPnL5Bqqa8hOIDGfEh88T2sQtXENzBHOO3gjkrlNa9+i+zGIswlvF78DQM 11 | pgOFfgwHdqPOhLnhT2u5CP8BiX4+IUoSEVTDqP6EdFrA/QA8GZ2sT7rFEbbYHg9N 12 | av2tBa1pRopo4dpE9zR89FjdZSdSpdMhSbe8wPuwpUwuebxkzPkEia9dDUmHUsFL 13 | tn6dnnhbL0uSOpIC2KcWX1+9IlFHnbQf33F7QVLsEupr710W3iR5AgMBAAGjUzBR 14 | MB0GA1UdDgQWBBSK6JoF95PGno7F++tCh3bHjNCE+zAfBgNVHSMEGDAWgBSK6JoF 15 | 95PGno7F++tCh3bHjNCE+zAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUA 16 | A4IBAQAV+1d97RaUUOR38ynmK4ifIfG6cfDkT2G0SWG9++sAhl+LTQkpmIw/XYSv 17 | 9/oBf9Nt4hOvItwP2g59bbpLbH8uMoshi41SpzpyYEFOffJV542+82Qp5t0bR+8J 18 | ckb0iBde9c+VMc1iQ+hft0GoLVgATuaDPqRiXB0q6t+FwoP4Qf2wunwHU6/sGUAj 19 | y9sGL1UIVgLACmB4hrnJX+q7z/bi3oglOJvNZic0TzkuaFsV/U0tOxE+lU+DhDEw 20 | vVhijkEIPGUsUxoiXzhTJbZJmMOVsAJnoQbg72pNbPaFLhUQhDZ8JwJ09zLpmYz5 21 | jeIlcV+/T5BbNMhprfXgFXaMZxMh 22 | -----END CERTIFICATE----- 23 | -------------------------------------------------------------------------------- /key.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDvCJeRR+igH/Ua 3 | 3gPJKm3Dl+zI37uh99uY2SGqRkkbirzckEV7xcPT4rbUu4+S/fbWJYKDAQGzHtlr 4 | K8+Hc2Q0PWAbRzXrU7KBDt5N8MiPnL5Bqqa8hOIDGfEh88T2sQtXENzBHOO3gjkr 5 | lNa9+i+zGIswlvF78DQMpgOFfgwHdqPOhLnhT2u5CP8BiX4+IUoSEVTDqP6EdFrA 6 | /QA8GZ2sT7rFEbbYHg9Nav2tBa1pRopo4dpE9zR89FjdZSdSpdMhSbe8wPuwpUwu 7 | ebxkzPkEia9dDUmHUsFLtn6dnnhbL0uSOpIC2KcWX1+9IlFHnbQf33F7QVLsEupr 8 | 710W3iR5AgMBAAECggEAGEUG754tm0F3Z1eSqpSLYcQ9i001Hb4+3otwSLu7bUeW 9 | Qq5G0cj8B7nRjrKvApGU4/wZvt+lqqhHksM3XmU7z7aKGSbvLXI5cfNepKr9kCBN 10 | 7HitVn+G+6HhCu2XamVCNaA9i8F5SP74u0kwzwf1myFzM3cl9Guoez7JZX7NbZ3e 11 | ys6tOt0+6YXBGrDFpIe29W89YKxfndDtUfYuMCA0bfT7oN1Lon5XJ6/uH9eDp4rD 12 | SS9GcggN+hI2uQIbYDCQOp2HzNIwTyIylysZVN5YKSpcvuI14ORlhlJpwJZMt7cH 13 | 1hxX/1JkQg1znXIJ6zzBSbNFLs5xJKI9OLrz5w0IgQKBgQD4m5AAxEr1GIyyFX5j 14 | mt8nUscPnnNOXXZnPiGFQYmsCliWcIQzf3QtdI6lUuDEXFV2KT48dwg9nDNlf1fx 15 | W0li9bJ2/RxAwJjr30aoZ/AcACLVS7luoEtHjiFfOfzXyVuI2d/W2m7KrnuqZtTv 16 | SJ7thFwGYllIoKmaCez8abjfgQKBgQD2JCZsVJ2ipLYK6km735pacxGWmXpejz2n 17 | /oHuH9nXpeIh+ZQCl5w0UjppmyvtSQASGdjnwD81MsdzZ4+S+K+YMt8R1lZ6Kqpi 18 | HPT5W0Mrfaf78pSIEAtq1+Ur0NVMX02sPLnjaurTsG0Hb7KfjkE9nSaoBSkUZ7Pl 19 | 9Hs5UGzA+QKBgQDwennnY/kl8KNYOBZT/yFRBm9rmlfrO9kmsSD3p5emhTOAAkK/ 20 | FdCpj4/UN8EX8EDy1Z5QGswr3IaS7YWCAE2SnhwNoXTM5gCGWSoeCLxoOXF4ZZFv 21 | gzqOctuxI4SCr1INpMMzL4PwJquU/3eGJvckxd3Ghyfaax7j1CobV6DvAQKBgHpS 22 | QsoJTwF564IHJrd4CuQyVSZLhZWih9iJ0ZY+O+tAY93Qgy66m4Ug7Ch5Vd4pLiDQ 23 | uYuKbZ8Jajc+2woGDnWLqnHZ28YAmAYEL/YP1ZSycJ3z0r6/gn0JZ7lbofS/VAFp 24 | eFO9WY/0GGrepp1Ge8Ob6o8LaXvbgXqhAe/cuP85AoGBAInhQftfvDWjjFBCYNgg 25 | g4Tr9IukfnXKLxK1FydolM/Fmuqdy1EItWVHOPPjI0VjffXasHOyaG9sSZPb066w 26 | vqkc2CNVkw9yU/gInVvTG+bGuuXmwQzb+W54rcLWGlEDIr1s0bnrQF9Jc5RBjpnb 27 | gC+ykhmyese0UHV3w/aVRSml 28 | -----END PRIVATE KEY----- 29 | --------------------------------------------------------------------------------