Finding a correspondence between two non-rigid shapes is one of the cornerstone problems in the field of three-dimensional shape processing. We describe a framework for marker-less non-rigid shape correspondence, based on matching intrinsic invariant surface descriptors, and the metric structures of the shapes. The matching task is formulated as a quadratic optimization problem that can be used with any type of descriptors and metric. We minimize it using a hierarchical matching algorithm, to obtain a set of accurate correspondences. Further, we present the correspondence ambiguity problem arising when matching intrinsically symmetric shapes using only intrinsic surface properties. We show that when using isometry invariant surface descriptors based on eigendecomposition of the Laplace-Beltrami operator, it is possible to construct distinctive sets of surface descriptors for different possible correspondences. When used in a proper minimization problem, those descriptors allow us to explore a number of possible correspondences between two given shapes.