-
Notifications
You must be signed in to change notification settings - Fork 99
Open
Description
When requesting a system port (127.0.0.1:25) the setuid call is to early. It should be after the listen is completed. In that way a system port can be open and the program can run at a lower security level.
$ sudo python3 -m aiosmtpd -l 127.0.0.1:25
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/runpy.py", line 86, in _run_code
exec(code, run_globals)
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/aiosmtpd/__main__.py", line 7, in <module>
main()
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/aiosmtpd/main.py", line 276, in main
server_loop = loop.run_until_complete(server)
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/asyncio/base_events.py", line 641, in run_until_complete
return future.result()
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/asyncio/base_events.py", line 1493, in create_server
raise OSError(err.errno, 'error while attempting '
PermissionError: [Errno 13] error while attempting to bind on address ('127.0.0.1', 25): permission denied
Metadata
Metadata
Assignees
Labels
No labels