How can i cut intersection surface

Need an abstract approach probably. Below might work.

Split the surfaces using multiple curves;

Patch the new surfaces, get their inner centroid and clash it against all the original surfaces. Faces with a clash between two surfaces should have two true results in that list.