To sew buttons on leather you need to prepare the area where the button is going to be sewn. The stitching can pull through the hide if you do not take precautions to protect the leather. You also need a special needle--strong and with a triangular point--to pierce the hide without weakening the leather. Use a thimble on your strongest finger so you can push hard enough on the needle to shove it through the leather without causing discomfort.
Thread the leather needle with waxed thread and tie a small knot in the end of the thread. Pull the knot tight, and snip off any loose thread ends hanging out past the base of the knot.
Push the point of the leather needle through the fabric from the back side. Pull the thread through until the knot is snug against the back of the leather.
Slide the shank button onto the needle and let it slide down the waxed thread.
Point the needle at the front side of the leather, 1/8 inch away from the spot where the thread emerges through the back side of the leather. Push the needle through and slide the flat two-hole button onto the needle.
Poke the needle through the second hole in the two-hole button, then push it through the first needle hole you made. Pull the thread tight, and then tip the needle so you can feed it through the shank. Poke the needle down through the second hole you made. The holes on the two-hole button will begin to line up with the holes in the leather after you make a couple of stitches.
Repeat these stitch motions several times, a minimum of five, until the shank button no longer wiggles when you touch it. Cut the needle and remaining thread off with the scissors.
If you have a hard time finding waxed linen thread you can make your own by buying plain linen thread and a beeswax disk at a sewing supply store. Poke the thread through the wax disk by threading it onto a needle, and pull the thread through to beeswax disk to coat it.