cve-2024-38477/httpd-2.4.59/test/modules/md/http_challenge_foobar.py
2025-06-05 15:09:30 +02:00

28 lines
796 B
Python
Executable File

#!/usr/bin/env python3
import os
import re
import sys
def main(argv):
if len(argv) < 4:
sys.stderr.write(f"{argv[0]} without too few arguments")
sys.exit(7)
store_dir = argv[1]
event = argv[2]
mdomain = argv[3]
m = re.match(r'(\S+):(\S+):(\S+)', event)
if m and 'challenge-setup' == m.group(1) and 'http-01' == m.group(2):
dns_name = m.group(3)
challenge_file = f"{store_dir}/challenges/{dns_name}/acme-http-01.txt"
if not os.path.isfile(challenge_file):
sys.stderr.write(f"{argv[0]} does not exist: {challenge_file}")
sys.exit(8)
with open(challenge_file, 'w') as fd:
fd.write('this_is_an_invalidated_http-01_challenge')
sys.exit(0)
if __name__ == "__main__":
main(sys.argv)