@cynicalsecurity short answer: yes
daemonising is, as a concept (forking into background), essentially incompatible with go runtime model, which implements its own M:N threading and uses OS threads rather loosely, and it's trivial to end up in a situation where the process would already have some threads started before it would reach your daemonizing code.
long answer: still yes, but daemonizing is bad anyway.
as a preface, the following is coming from being burned in many ways by processes attempting to drop privileges and daemonizing on their own. most often by silent failures with nothing on stdout/stderr/logs; but sometimes by leaking/retaining elevated privileges when they weren't supposed to.
self-daemonising is surprisingly difficult to do properly in general, arguably maybe even impossible if your code is anything but a statically linked executable directly interfacing with the kernel syscall interface (not even going through libc) because of how many things happen before "your" code is reached in process lifetime.
i've seen services dropping privileges improperly too often to trust just about any service to do so, regardless of what programming language they're written in, and instead i strongly prefer to have a service manager that would setup proper environment (privs dropped, etc etc) first, and then start the service.
if nothing else, there's less security sensitive code to audit, and it's in just one place, instead of having a myriad variations, with every service author implementing their own slightly different way of doing things.
I recently saw an amazing Navajo rug at the National Gallery of Art. It looks abstract at first, but it is a detailed representation of the Intel Pentium processor. Called "Replica of a Chip", it was created in 1994 by Marilou Schultz, a Navajo/Diné weaver and math teacher. Intel commissioned the weaving as a gift to the American Indian Science & Engineering Society. 1/6
We just published v4.1.0 of the eslint plugin `no-unsanitized`, which prohibits the usafe of XSS sinks (e.g., `innerHTML=` or `setHTMLUnsafe()`) without the use of a preconfigured sanitizer library.
The rule helps finding and preventing XSS in various Mozilla projects, including Firefox.
Technical Details at https://frederikbraun.de/finding-and-fixing-dom-based-xss-with-static-analysis.html and source at https://github.com/mozilla/eslint-plugin-no-unsanitized
We broke 10k stars on #GitHub! Remaining in the 1st and 2nd positions on #Google for, “Reverse Engineering Tutorial”. Special thanks to @0xinfection @hasherezade @fox0x01 @three_cube @binitamshah and all of you! #ReverseEngineering https://github.com/mytechnotalent/Reverse-Engineering
this is my emotional support carwash. whenever I get sad I ssh into this Montenegrin carwash I found on shodan 12 years ago and spin the rollers a bit. makes me feel real again
I know that one should never, ever go to SciHub to find academic papers but is there a site one should never, ever go to for ISO/IEC standards documents?