{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":688983179,"defaultBranch":"3.2","name":"testssl.sh","ownerLogin":"Tazmaniac","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2023-09-08T14:19:08.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/3835870?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1711452608.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"6d80ec189f24ce34a37a14ba0088c45a0b0c021a","ref":"refs/heads/renego-fix3","pushedAt":"2024-03-26T11:30:08.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Small important fixes:\n\n- In case of multiple IP testing, clear ERRFILE bettween runs\n- Zero return value with server connection close should be taken into\n account in the looping logic case too. Add it.\n- Break the wait loop in case of connection close for faster result.\n- Ignore \"notAfter\" in the wait loop for expired certificates.\n- Indentation and tab cleanup.\n\nTested on 57 url with previously suspicious results with success. No\nregressions on 50 others.","shortMessageHtmlLink":"Small important fixes:"}},{"before":"a2fdfb011e18a4bbbda136121d784bd3658918f1","after":"979a22c12658112986598d7fce3e7ceef373c868","ref":"refs/heads/3.2","pushedAt":"2024-03-18T10:04:42.000Z","pushType":"push","commitsCount":17,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Merge pull request #2480 from drwetter/dependabot/github_actions/docker/build-push-action-5.3.0\n\nBump docker/build-push-action from 5.2.0 to 5.3.0","shortMessageHtmlLink":"Merge pull request drwetter#2480 from drwetter/dependabot/github_acti…"}},{"before":"2824e347b498a2e0167204831899a32b2673eabd","after":"426bfa6cd54dd7024e5db2ba352b69b773e22d18","ref":"refs/heads/renego_timing_fix2","pushedAt":"2024-03-06T15:02:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Fix the cleanup ...","shortMessageHtmlLink":"Fix the cleanup ..."}},{"before":"43e55617bb7104ab8ff5c1233edb88d48207904d","after":"2824e347b498a2e0167204831899a32b2673eabd","ref":"refs/heads/renego_timing_fix2","pushedAt":"2024-03-06T14:47:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Cleanup bash $(( )) arithmetic usage","shortMessageHtmlLink":"Cleanup bash $(( )) arithmetic usage"}},{"before":"91367caa71fc961cd6d1ab4be16f239980aecc90","after":"43e55617bb7104ab8ff5c1233edb88d48207904d","ref":"refs/heads/renego_timing_fix2","pushedAt":"2024-03-06T13:56:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"errorlog filtering fix\n\nFilter out verify and deph lines to not reintrodure timing race\ncondition.","shortMessageHtmlLink":"errorlog filtering fix"}},{"before":"35496e5c5f97b979ce59725c7411e5df772fa38c","after":"91367caa71fc961cd6d1ab4be16f239980aecc90","ref":"refs/heads/renego_timing_fix2","pushedAt":"2024-03-06T13:26:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Fix and optimisation\n\nThere is a race condition if openssl exit during a renego but after\nthe RENEGOTIATING printing.\nIn this case we could issue a R before the process exit and be blocked\nin the waiting loop.\nWith the safety guards in place (loop count + timeout) this is harmless\nbut not optimal.\nFix this by:\n- reordering the sleep vs echo to let the process exit and catch the\n pipe error more frequently.\n- exit the while loop if RENEGOTIATING is not the last log line. We\n will catch the pipe error on the next for loop echo.\n- correct the k variable initialisation\n- correct the for (( ; ; )) variable $ convention usage\n- reduce the while loop count limit to 120 to align with the global\n timeout","shortMessageHtmlLink":"Fix and optimisation"}},{"before":"81167dc90887f4dc1e17336e7a056ea5e175e5ec","after":"35496e5c5f97b979ce59725c7411e5df772fa38c","ref":"refs/heads/renego_timing_fix2","pushedAt":"2024-03-04T18:17:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Clean up watchdog file logic","shortMessageHtmlLink":"Clean up watchdog file logic"}},{"before":"8627ba518fd87d1e80849650ad92228a2dbc4f43","after":"81167dc90887f4dc1e17336e7a056ea5e175e5ec","ref":"refs/heads/renego_timing_fix2","pushedAt":"2024-03-04T17:51:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Fixes:\n\n- Add safety gards againts infinite sleep loop\n- correct the for loop test\n- reverse the watchdog file logic for sleep loop. No timing dependance.","shortMessageHtmlLink":"Fixes:"}},{"before":null,"after":"8627ba518fd87d1e80849650ad92228a2dbc4f43","ref":"refs/heads/renego_timing_fix2","pushedAt":"2024-03-01T21:02:41.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Kill the heuristic an count the real number of renegociations\n\nThe heuristic is too fragile and timing dependant.\n\n- As for the initial TLS negociation, wait for the result of the\n renegociation request before sending the next one.\n- Remove the result ratio calculation and message as we now reach the\n timeout in case of exponential backoff or connection hang.\n\nThis commit depend on the fix of the timeout, broken by the zombi fix.","shortMessageHtmlLink":"Kill the heuristic an count the real number of renegociations"}},{"before":"34fe533689033f29c831ccb8b99327db9f7188bf","after":null,"ref":"refs/heads/renego_timing_fix2","pushedAt":"2024-03-01T20:58:25.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"}},{"before":null,"after":"34fe533689033f29c831ccb8b99327db9f7188bf","ref":"refs/heads/renego_timing_fix2","pushedAt":"2024-03-01T20:57:08.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Kill the heuristic an count the real number of renegociations\n\nThe heuristic is too fragile and timing dependant.\n\n- As for the initial TLS negociation, wait for the result of the\n renegociation request before sending the next one.\n- Remove the result ratio calculation and message as we now reach the\n timeout in case of exponential backoff or connection hang.\n\nThis commit depend on the fix of the timeout, broken by the zombi fix.","shortMessageHtmlLink":"Kill the heuristic an count the real number of renegociations"}},{"before":"e4662c2abcec734b5feabd86f87dc6596a613515","after":null,"ref":"refs/heads/renego_timing_fix2","pushedAt":"2024-03-01T20:56:37.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"}},{"before":null,"after":"e4662c2abcec734b5feabd86f87dc6596a613515","ref":"refs/heads/renego_timing_fix2","pushedAt":"2024-03-01T20:38:52.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Kill the heuristic an count the real number of renegociations\n\nThe heuristic is too fragile and timing dependant.\n\n- As for the initial TLS negociation, wait for the result of the\n renegociation request before sending the next one.\n- Remove the result ratio calculation and message as we now reach the\n timeout in case of exponential backoff or connection hang.\n\nThis commit depend on the fix of the timeout, broken by the zombi fix.","shortMessageHtmlLink":"Kill the heuristic an count the real number of renegociations"}},{"before":null,"after":"242ca656de5d04862a1a4ad146915e4915ca801d","ref":"refs/heads/zombi-fix-overlook","pushedAt":"2024-03-01T16:37:49.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Do not wait on pid you are not a parent.\n\nThe zombi fix did too much modifications breaking the global time-out\nfunction.\nAs the wait $pid failed, we no longer create the watchdog file.\nFix by reverting unnecessary changes.","shortMessageHtmlLink":"Do not wait on pid you are not a parent."}},{"before":"f84e8c05f510b1b43f76b744137e197ccb0b379d","after":"a2fdfb011e18a4bbbda136121d784bd3658918f1","ref":"refs/heads/3.2","pushedAt":"2024-03-01T14:36:13.000Z","pushType":"push","commitsCount":8,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Merge pull request #2474 from drwetter/mtls_beta\n\nPolish PR2461 (mTLS) + label as beta","shortMessageHtmlLink":"Merge pull request drwetter#2474 from drwetter/mtls_beta"}},{"before":"19607d7c2ce1cb8d7207da60dcf32b296ae81ea1","after":"f84e8c05f510b1b43f76b744137e197ccb0b379d","ref":"refs/heads/3.2","pushedAt":"2024-02-22T09:18:59.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Merge pull request #2470 from Tazmaniac/renego_timing_fix\n\nCorrect client_renego timing bug.","shortMessageHtmlLink":"Merge pull request drwetter#2470 from Tazmaniac/renego_timing_fix"}},{"before":null,"after":"af20952b860a440e2379beb09546a86145021b26","ref":"refs/heads/zombies-fix-3.2","pushedAt":"2024-02-19T15:21:32.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Fix subshell killing to avoid zombies\n\nLearned from the rest of the code ...","shortMessageHtmlLink":"Fix subshell killing to avoid zombies"}},{"before":"62b5859d52c8bfaca8db9a2c82ae454385ee0b45","after":"19607d7c2ce1cb8d7207da60dcf32b296ae81ea1","ref":"refs/heads/3.2","pushedAt":"2024-02-19T15:08:41.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Merge pull request #2467 from Tazmaniac/mongodb-detection-fix\n\nMongoDB identification fix","shortMessageHtmlLink":"Merge pull request drwetter#2467 from Tazmaniac/mongodb-detection-fix"}},{"before":"8c2869a2d5287c71c5e4b013b88728e08bbe822a","after":"22ddd301f053f29012cb2e923dfa2f9c1abdf545","ref":"refs/heads/kill-fix","pushedAt":"2024-02-19T13:23:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Zombies fix attempt.","shortMessageHtmlLink":"Zombies fix attempt."}},{"before":null,"after":"8c2869a2d5287c71c5e4b013b88728e08bbe822a","ref":"refs/heads/kill-fix","pushedAt":"2024-02-19T09:59:38.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Fix subshell killing to avoid zombies","shortMessageHtmlLink":"Fix subshell killing to avoid zombies"}},{"before":null,"after":"c98c780ded0f7b9ef4288fdc4945a9ac492e9074","ref":"refs/heads/mongodb-detection-fix-backport","pushedAt":"2024-02-13T16:51:06.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"MongoDB identification fix\n\nThe actual code grep for \"MongoDB\" keyword in the head of the HTTP\nsession.\nIn case of \"compressed\" HTML, a big page is on one line.\nOn a IT page, we could encounter the \"MongoDB\" keyword and\nmiss-identify the application protocol.\n\nFixed by matching on a longuer string taken from a live MogoDB\nserver.","shortMessageHtmlLink":"MongoDB identification fix"}},{"before":"faae91edbc5eb822007f103dd5f829894a24f4b6","after":"6277613906de07ab241a0236bb6ebc4881d8330f","ref":"refs/heads/renego_timing_fix","pushedAt":"2024-02-13T14:42:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Usual spell fixes.","shortMessageHtmlLink":"Usual spell fixes."}},{"before":null,"after":"4066766de52dcae65fa5e9574489e2c14428794e","ref":"refs/heads/mongodb-detection-fix","pushedAt":"2024-02-13T14:13:06.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"MongoDB identification fix\n\nThe actual code grep for \"MongoDB\" keyword in the head of the HTTP\nsession.\nIn case of \"compressed\" HTML, a big page is on one line.\nOn a IT page, we could encounter the \"MongoDB\" keyword and\nmiss-identify the application protocol.\n\nFixed by matching on a longuer string taken from a live MogoDB\nserver.","shortMessageHtmlLink":"MongoDB identification fix"}},{"before":null,"after":"faae91edbc5eb822007f103dd5f829894a24f4b6","ref":"refs/heads/renego_timing_fix","pushedAt":"2024-02-13T13:57:42.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Correct client_renego timing bug.\n\nOpenSSL will buffer only the first command till the establishment of the\nsession.\nIn case of slow session establishment, we could:\n * loose some renego trys missing proper mitigation implementation\n * loose some renego trys missing a real vulnerable host if 2/3 of the\n tries are lost during session establishment (very slow startup).\n\nWait for the session to be fully establised before starting the renego\nloop.","shortMessageHtmlLink":"Correct client_renego timing bug."}},{"before":"ad04a90b2a977e234644c5a6cb1ee3581bfbe09e","after":"62b5859d52c8bfaca8db9a2c82ae454385ee0b45","ref":"refs/heads/3.2","pushedAt":"2024-02-12T16:06:02.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Merge pull request #2465 from Odinmylord/3.2\n\nAdd SNI to ticketbleed check","shortMessageHtmlLink":"Merge pull request drwetter#2465 from Odinmylord/3.2"}},{"before":"02a3c2cc1492dc799d065b5794e8e3dfe8207b8c","after":"4cc02a63eff0fffa1249c9b0013f8c8648715151","ref":"refs/heads/client-renego-regression","pushedAt":"2024-01-19T16:11:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"One more spell fix...","shortMessageHtmlLink":"One more spell fix..."}},{"before":null,"after":"02a3c2cc1492dc799d065b5794e8e3dfe8207b8c","ref":"refs/heads/client-renego-regression","pushedAt":"2024-01-19T15:27:41.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Fixed regression in printing results\n\nAnd improve it with the effective number of renego before disconnection\nas it is now tracked.","shortMessageHtmlLink":"Fixed regression in printing results"}},{"before":"d30d8e09f2178b761c58ed18f8caf733527a1d23","after":"ad04a90b2a977e234644c5a6cb1ee3581bfbe09e","ref":"refs/heads/3.2","pushedAt":"2024-01-19T15:14:18.000Z","pushType":"push","commitsCount":26,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Merge pull request #2459 from Tazmaniac/client-renego-fix\n\nSecure Client-Initiated Renegotiation : fixes/enhancements","shortMessageHtmlLink":"Merge pull request drwetter#2459 from Tazmaniac/client-renego-fix"}},{"before":"de364b0c849c36f2896788d4df4428f24330cc9e","after":"67c362c89ab413536d101848032bc75050903257","ref":"refs/heads/client-renego-fix","pushedAt":"2024-01-15T09:08:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"One more spell fix","shortMessageHtmlLink":"One more spell fix"}},{"before":null,"after":"de364b0c849c36f2896788d4df4428f24330cc9e","ref":"refs/heads/client-renego-fix","pushedAt":"2024-01-12T11:10:58.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Tazmaniac","name":null,"path":"/Tazmaniac","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3835870?s=80&v=4"},"commit":{"message":"Introduce SSL_REGEG_WAIT and reduce wait to 0.25s\n\nReduce wait between reneg test to 0.25s. Still robust and accelerates\nthe test as now we do up to 10 renego tests.\n\nWith the global loop timeout, the backoff identification seem unneeded.\nBut if we switch to 0.25s, we no longuer trigger the global timeout so\nit is still valuable.\nAdjust write out messages as bash do not support floating point number\narithmetic.","shortMessageHtmlLink":"Introduce SSL_REGEG_WAIT and reduce wait to 0.25s"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEH4r4uQA","startCursor":null,"endCursor":null}},"title":"Activity · Tazmaniac/testssl.sh"}