Start by stabilizing the newel posts. Typically they will be bolted from the underside of the stairs, a simple turn with a wrench may take care of the problem. If not, replace the lag bolt with the next size in diameter to correct the stripped holes. Some older stairs may be toe nailed (nails driven in at an angle) from the top into the stair tread. The nails may be hidden behind a baseboard type molding around the bottom of the post. Make sure that these nails are snugly in place.
Remove any molding around the bottom of the post. Use a chisel or thin flat bar and hammer to gently pry the molding off of the post. Use a hammer to tap nails tight. Add extra nails, if needed. Long screws can also be driven in at an angle to tighten the post.
Replace the molding and patch any nail holes with caulk or wood filler. Check the railing to see if it is solid or requires more reinforcement.
Add L brackets to at least two sides, between the post and the stair tread, to secure severely loose newel posts. Pre-drill and use wood screws to attach the L brackets.
Use a rubber mallet to tap the banister tightly against the newel posts. Add nails or screws if needed. Make sure to use fasteners that are long enough to bite into the top of the newel post. Use finish head screws and nails to minimize damage. Set nails with a punch and tighten screws to just below the surface.
Check each baluster for tightness. Tap in loose nails. Add nails or screws if needed. Small L brackets can be added between the baluster and stair tread. Be sure to countersink the screws or set the nails with a punch. Cover all nail holes with caulk or wood filler.