I created a very simple hand model and I'm trying to rig it to make a fist out of it. But when I do make that pose, I see a lot of weird deformations on the fingers. I tried to play with weight painting, but I can't get the result I'm looking for.
Your model will deform better just by adding more resolution. For example you can have 2-3 loops on the joint intersection. After that there’s the option of using shape keys, which works well for hinge joints (one axis of deformation). For multiple axis you need more shape keys, check out my other answer on this topic.
edit: As a note, you could also reduce some bones in the base hand. For simplicity sake, you can only have one for the 4 fingers and one for the thumb. However, in reality you have some mobility at the smaller finger and ring finger metacarpal bones. Also the thumb has only 2 phalanges and one metacarpal bone.