|
8 | 8 | * License: GNU/GPLv2 |
9 | 9 | * @see LICENSE.txt |
10 | 10 | * |
11 | | - * This file: Optional security extras module (last modified: 2025.04.17). |
| 11 | + * This file: Optional security extras module (last modified: 2025.04.28). |
12 | 12 | * |
13 | 13 | * False positive risk (an approximate, rough estimate only): « [ ]Low [x]Medium [ ]High » |
14 | 14 | */ |
|
153 | 153 |
|
154 | 154 | /** Probing for webshells/backdoors. */ |
155 | 155 | if ($Trigger(preg_match( |
156 | | - '~(?:^|[/?])(?:[1-9cefimnptuwx]{27}\.jsp$)~', |
| 156 | + '~(?:^|[/?])(?:[1-9cefimnptuwx]{27}\.jsp|(?:send-)?ses\.sh)(?:$|[/?])~', |
157 | 157 | $LCNrURI |
158 | 158 | ), 'Probing for webshells/backdoors')) { |
159 | 159 | $CIDRAM['Reporter']->report([15, 20], ['Caught probing for webshells/backdoors. Host might be compromised.'], $CIDRAM['BlockInfo']['IPAddr']); |
160 | | - } // 2024.02.18 |
| 160 | + } // 2024.02.18 mod 2025.04.28 |
161 | 161 |
|
162 | 162 | /** Probing for exposed Git data. */ |
163 | | - if ($Trigger(preg_match('~\.git(?:$|\W)~', $LCNrURI), 'Probing for exposed git data')) { |
| 163 | + if ($Trigger(preg_match('~\.git(?:config)?(?:$|\W)~', $LCNrURI), 'Probing for exposed git data')) { |
164 | 164 | $CIDRAM['Reporter']->report([15, 21], ['Caught probing for exposed git data.'], $CIDRAM['BlockInfo']['IPAddr']); |
165 | | - } // 2022.06.05 mod 2023.09.04 |
| 165 | + } // 2022.06.05 mod 2025.04.28 |
166 | 166 |
|
167 | 167 | /** Probing for exposed VSCode data. */ |
168 | 168 | if ($Trigger(preg_match('~(?:^|[/?])\.vscode(?:$|\W)~', $LCNrURI), 'Probing for exposed VSCode data')) { |
|
175 | 175 | } // 2022.06.05 mod 2023.09.04 |
176 | 176 |
|
177 | 177 | /** Probing for exposed AWS credentials. */ |
178 | | - if ($Trigger(preg_match('~(?:^|[/?])(?:\.aws/credentials?|aws\.yml)(?:$|\W)~', $LCNrURI), 'Probing for exposed AWS credentials')) { |
| 178 | + if ($Trigger(preg_match('~(?:^|[/?])(?:\.aws_?/credentials?|aws\.yml)(?:$|\W)~', $LCNrURI), 'Probing for exposed AWS credentials')) { |
179 | 179 | $CIDRAM['Reporter']->report([15, 21], ['Caught probing for exposed AWS credentials.'], $CIDRAM['BlockInfo']['IPAddr']); |
180 | | - } // 2023.09.04 mod 2024.05.14 |
| 180 | + } // 2023.09.04 mod 2025.04.28 |
181 | 181 |
|
182 | 182 | /** Probing for exposed FTP credentials. */ |
183 | 183 | if ($Trigger(preg_match('~(?:^|[/?])\.?s?ftp-(?:config|sync)\.json(?:$|[/?])~', $LCNrURI), 'Probing for exposed FTP credentials')) { |
|
200 | 200 | } // 2024.05.02 mod 2025.03.18 |
201 | 201 |
|
202 | 202 | /** Probing for env file. */ |
203 | | - if ($Trigger(preg_match('~(?:^|[/?])\.env(?:\.(?:production|example))?(?:$|[/?])~', $LCNrURI), 'Probing for env file')) { |
| 203 | + if ($Trigger(preg_match('~(?:^|[/?])(?:config)?\.env(?:\.(?:example|local|production|save))?(?:$|[/?])~', $LCNrURI), 'Probing for env file')) { |
204 | 204 | $CIDRAM['Reporter']->report([15, 21], ['Caught probing for env file.'], $CIDRAM['BlockInfo']['IPAddr']); |
205 | | - } // 2025.03.18 |
| 205 | + } // 2025.03.18 mod 2025.04.28 |
206 | 206 |
|
207 | 207 | /** Attempts by broken bot to incorrectly access ReCaptcha files (treating reference to remote resource as local). */ |
208 | 208 | $Trigger(preg_match('~/www\.google\.com/recaptcha/api\.js(?:$|[/?])~', $LCNrURI), 'Bad request'); // 2025.03.03 |
|
0 commit comments