I'm not asking for a macro but for a native vim command (haven't found one...).
Sample ('*' denotes the cursor position; the area between the '|'s reflects the selection after "some possible native command"):
------------
$<ctag>
<tag>
a
</tag>
|<tag>
* b
</tag>
<tag>
c
</tag>|
<tag>
d
</tag>
</ctag>$
------------
Note: v2at would select the area between the '$'s.