Some of the comments in Goldstern's answer express doubt as to whether choice is required. Here is a proof without choice, in gory detail. The trick is to notice that the construction of an infinite branch $\alpha$ in an infinite binary tree $T$ requires no appeal to the axion of choice because we can specify a concrete choice: go left if you can, otherwise go right.
The Hilbert cube is a continuous image of the Cantor space $2^\omega$ of infinite binary sequences with the product topology. Thus it suffices to show that $2^\omega$ is compact. Given a finite binary sequence $a = [a_1, \ldots, a_n]$, denote by $|a| = n$ its length, and let $B_a = \lbrace \alpha \in 2^\omega \mid a = [\alpha_1, \ldots, \alpha_{|a|}] \rbrace$ be the basic open subset of those sequences that start with $a$.
Consider any cover $(B_{a_i})_{i \in I}$ of $2^\omega$. We build a binary tree $T$ which consists of those finite binary sequences $a$ for which $B_a$ is not contained in any $B_{a_i}$, $$T = \lbrace a \in 2^{*} \mid \forall i \in I . B_a \not\subseteq B_{a_i} \rbrace.$$ In other words, we put in $T$ any finite sequence $a$ such that all of its prefixes are not in $(a_i)_{i \in I}$. Let us show that $T$ is finite.
Suppose on the contrary that $T$ were infinite. Then we can build an infinite path $\alpha$ in $T$ by recursion as follows. (This is König's lemma, saying that an infinite binary tree has an infinite path.) We make sure that at each stage $n$ the subtree of $T$ at $[\alpha_1, \ldots, \alpha_n]$ is infinite. Start with the empty sequence $[]$. The tree at $[]$ is all of $T$, which is infinite by assumption. If $[\alpha_1, \ldots, \alpha_n]$ has been constructed, let $T'$ be the subtree of $T$ at $[\alpha_1, \ldots, \alpha_n]$. One or both of the trees $$T_0' = \lbrace b \in T' \mid b_{n+1} = 0 \rbrace$$ and $$T_1' = \lbrace b \in T' \mid b_{n+1} = 1 \rbrace$$ is infinite. If $T_0'$ is infinite, set $\alpha_{n+1} = 0$, otherwise set $\alpha_{n+1} = 1$. (At this point we did not appeal to the axiom of choice, but we did appeal to excluded middle.) This concludes the construction of $\alpha$. Now we have a problem since $\alpha$ is covered by some $B_{a_i}$, and so $a_i$ is a prefix of $\alpha$, but this contradicts the definition of $T$.
Now we know that $T$ is finite. Let $n$ be its height, i.e., the length of a longest branch. Consider the subset $J \subseteq I$ of those indices $j \in I$ for which $|a_j| \leq n + 1$. As there are only finitely many binary sequences of length at most $n+1$, the set $J$ is finite. But since every sequence of length $n+1$ has some $j \in J$ such that $a_j$ is its prefix, $(B_{a_j})_{j \in J}$ is a finite cover of $2^\omega$.