Assume the points are known to be distinct, since otherwise the problem is either trivial or degenerate. Of course numerical accuracy is an issue, if we are to distinguish a pair of lines that nearly intersect from a pair that would exactly intersect except for round-off in computation.
First dispose of the case where AB is parallel to CD by checking the linear independence of {A-B,C-D}. If they are parallel, then either there is no point of intersection or the intersection is not unique (since the lines coincide).
Then the question of whether nonparallel lines AB and CD intersect is the same as coplanarity of A,B,C,D.
By translation we can assume D $= (0,0,0)$ is the origin. Check the rank of the matrix M whose rows are A,B,C. The lines intersect if and only if that rank is less than 3.
Suppose $u$ M $ = 0$ is a nontrivial solution of the homogeneous problem, scaled so that:
$u_1 + u_2 = 1$
[Note that if $u_1 + u_2 = 0$, it would imply C = D is also the origin.]
Then $u_1$ A + $u_2$ B belongs to AB as well as CD.
If the question intended was whether line segments AB and CD intersect, i.e. whether any point of intersection falls strictly in between A and B, as well as between C and D, then this can also be decided from the computation outlined above. The additional requirement would be that $u_1,u_2$ are in [0,1], and that $-1 \leq u_3 \leq 0$.