You can do that effortlessly right in openscad itself or in freecad for a more visual way, or in every single cad app in existence I think.
In freecad you first just open the stl file, then Part -> Create part from mesh, then you have a solid you can modify.
Sounds great in theory until you actually try it and discover that anytime a STL touches another object the F6 render craps out with "Manifold conversion failed: NotManifold"
I just tried this in OpenSCAD and it crashed:
intersection() { import("3DBenchy.stl"); sphere(30); }
FYI, I just tested this in OpenSCAD version 2025.09.13 and it works fine.
Indeed it does. Looks like their recent dev builds are way better. Good to know.