You have a 3D frustum. Consider the smallest face the "near" and it's opposite the "far" face.

The near and far faces are both perfect rectangles (not squares).
No face is axis-aligned.
The near and far faces are not necessarily parallel to one another.
You have only four known points, two of which (x1,y1,z1 and x2,y2,z2) compose the top left edge connecting the near and far face, and the other two (x3,y3,z3 and x4,y4,z4) which compose the bottom right edge connecting the near and far face.
edit: I forgot to draw in the Zs on the image, but this is in 3D.
what is the simplest solution to finding the other four points?
edit: the math doesn't have to be exact, just "good enough." This is being applied to a computer program to generate a frustum. the frustum doesn't have to be "perfect"
Update - One possible solution:
find a point on the far face between it's two known points. Do the same for the near face. take the two points generated consider it a line. use that line as an axis to rotate the original four known points 90 degrees. the result will be the points needed. The problem with this solution is that I will need a matrix or quaternion to do the rotation, I'm hoping there is simpler solution.