Let $\rho\in\mathrm{D}(\mathcal H)$ be a state in some (finite-dimensional) Hilbert space $\mathcal H$ and suppose that $\operatorname{rank}(\rho)=r$. This means that we can write it as $$\rho = \sum_{k=1}^r p_k \mathbb P_{u_k}, \quad\text{with}\quad p_k>0, \,\,\sum_k p_k=1, \,\, \mathbb P_{u_k}\equiv \lvert u_k\rangle\!\langle u_k\rvert.\tag1$$
The set of purifications of $\rho$ is easily characterised as the set of states $\newcommand{\ket}[1]{\lvert #1\rangle}\ket\psi\in\mathcal H\otimes \mathcal H_A$, with $\dim\mathcal H_A=r$, that have the form $$\ket\psi=\sum_{k=1}^r \sqrt{p_k} \ket{u_k}\otimes\ket{v_k},\tag2$$ for any orthonormal basis $\{\ket{v_k}\}_{k=1}^r\subset \mathcal H_{A}$. We can of course also consider purifications with larger ancillary spaces, but those would be trivially reducible to the case with $\dim\mathcal H_A=r$.
Consider now the more general set of extensions of $\rho$. This is the set of states $\tilde\rho\in\mathrm{D}(\mathcal H\otimes\mathcal H_A)$, for some auxiliary space $\mathcal H_A$, such that $\operatorname{Tr}_A\tilde\rho=\rho$. An example of a non-pure extension for a qubit can be found e.g. in this answer.
One way to characterise extensions is to observe that any extension can be written as the partial trace of a purification. As per our observation above about purifications, we can take a purification $\ket\psi$ that uses a bipartite auxiliary space, $\mathcal H_A=\mathcal H_B\otimes\mathcal H_C$, so that $\ket{v_k}\in\mathcal H_B\otimes\mathcal H_C$, and then tracing out $\mathcal H_C$ gives \begin{align}\newcommand{\ketbra}[2]{\lvert #1\rangle\!\langle #2\rvert} \tilde\rho = \sum_k \sqrt{p_j p_k} \ketbra{u_j}{u_k}\otimes \operatorname{Tr}_C[\ketbra{v_j}{v_k}] = \sum_k \sqrt{p_j p_k} \ketbra{u_j}{u_k}\otimes \sigma_{jk}, \tag3 \end{align} where $\sigma_{jk}\equiv \operatorname{Tr}_C[\ketbra{v_j}{v_k}]\in\mathrm{Lin}(\mathcal H_B)$ is such that $\operatorname{Tr}(\sigma_{jk})=\delta_{jk}$. Any extension can be written as (3), as if $\tilde\rho$ is a generic extension, then its purification has the form in Eq. (2), and then partial tracing we get the form in Eq. (3).
Are there nicer/more elegant/terser characterisations for the set of extensions of $\rho$?