Hello Jorg,
the first (of several) stumbling blocks for a "3D shape" would be that there is not yet a general "3D Shapefile" format that has wide-spread support in GIS packages to do such inside / outside operations. What may be easier to implement and more usable in other tools may be the creation of two height rasters - a lower one and an upper one - that enclose / envelope the points and then to use the two surfaces defined in combination with two runs of lasheight to cut away the points outside this envelope. Maybe this workflow works for you:
lasgrid -i one.laz -lowest -step 2 -o lower.bil
lasgrid -i one.laz -highest -step 2 -o upper.bil
lassort -i lower.bil -o lower.laz
lassort -i upper.bil -o upper.laz
lasindex -i lower.laz
lasindex -i upper.laz
lasheight -i two.laz -ground_points lower.laz -drop_below 0 -o two_above.laz
lasheight -i two.laz -ground_points upper.laz -drop_above 0 -o two_enclosed.laz
Instead of using 0 you may want to use 0.5 and -0.5 for a slightly "buffered" envelope.
Regards,
Martin @rapidlasso