The moderncv document class defines a section without a counter. Here's the \section command extracted from moderncv.cls:
% usage: \section{<title>}
\newcommand*{\section}[1]{%
\vspace*{2.5ex}%
\parbox[m]{\hintscolumnwidth}{\raggedleft\hintfont{\color{sectionrectanglecolor}\rule{\hintscolumnwidth}{1ex}}}%
\phantomsection{}% reset the anchor for hyperrefs
\addcontentsline{toc}{part}{#1}%
\hspace{\separatorcolumnwidth}%
\parbox[m]{\maincolumnwidth}{\sectionstyle{#1}}%
\par\nobreak\vskip 1ex\@afterheading}% to avoid a pagebreak after the heading
Correct referencing is obtained via hyperref's \phantomsection. Hence, \ref returns nothing other than a correct internal hyperlink. This is also evident from the fact that the sections in moderncv is not typeset with a numbered counter.
As such, if you want to have a description associated with the link, you need to use \hyperref[<lab>]{<text>} where <lab> is your label, and <text> is what you want to be clickable. For example, using the posted MWE, you could use
\cventry{year--year}{Job title}{Employer}{City}{}{See section \hyperref[sec:th]{Master thesis}}

hypersetup{pdfborder = 0 0 1}after\begin{document}, but this is not very useful to symbolize a link. – Peter Grill Oct 21 '11 at 20:54moderncvdon't produce numbering, so there's no string to be picked up to generate a reference; they just contain\phantomsectionto create an anchor. – Gonzalo Medina Oct 21 '11 at 21:01