For legal contract advice, I would of course contact a lawyer who specializes in contract law. However, I sense that what you want isn't so much the legal but what to do to get the contract continued without making the client angry so that they turn you off entirely.
In your case this is what I would do. First present an invoice for the work you have done while not under contract. It sounds as if they knew you were continuing to work, so if they pay it, then you probably can continue to work. If you were working and they were not aware of that fact, then stop working immediately, there is a significantly lower chance you would get paid in that instance.
In writing, I would tell them that unless the invoice is paid, you cannot continue to work on the project until a new contract is paid. Be polite about it, but be firm. Set a date you must be paid by. If you have emails or other documentation that proves they asked you to work or were aware that you were working with the contract expired, I would attach them (also before you do this, save those to a location on your personal computer if they are on the company server as this will help you if this goes to court to get your money). Tell them that you are willing and would like to continue working on the project, but only if they can assure you in writing that the hours you work while not under contract will be paid for at the current rate. Be very neutral in the this first document. You are politely asking to be paid nothing more. I might also ask for an estimate of when the new contract is expected to be in place.
If they refuse to pay you, stop working until the contract is in place unless you negotiate with them that you will have a contract in place by x date and that all work in the meantime will be paid. If they cannot give you a date when you will be paid and the new contract in place, then start looking for a new contract with someone else. A company that doesn't respect your time and that doesn't want to pay for work they authorized is a company that you do not want to work for.
If they say they will pay you when the new contract is in place, then at least you have a written commitment that the hours you work will be paid and your chances of winning a court case are improved if they refuse to pay. At that point you might tell them that you can only continue without being paid until a particular date. After all you have bills to pay and need to have food and electricity and all that. If they would let you get overdue on your bills because someone is on vacation, then cut the cord and find a better gig.
If you feel you have to leave the project to find paying work as they keep delaying, then the only work you should do after making that decision is to get the project in shape to hand over (make sure changes are checked in and create documentation so they know where it stands and where to find things). Then you can leave like a professional which may help you later in your career as people remember when someone leaves badly and you never know when someone who works there might be a hiring officially at a different company in two or three years. It always pays to not leave an undecipherable mess behind not matter how angry you are.