Somebody suggested them for my Walrein in White but I don't have the TM's.
Toxic-Route 17 on the blue puddle , there are only 2 items there so you can find it easily
Protect-obtain from Professor Juniper after you seen 60 or more Pokemon.Go to the lab in Nuvema Town to receive it.
Hope this helps..
Toxic TM - In a small section of shallow water on Route 17. You'll need to go down to the beach and surf on the water going west until you see a light-blue puddle with an overworld item on it.
(Source: Guide Strats)
Protect TM - After you've seen 60 unique Pokémon in battle (just seen, not caught) then Professor Juniper will give you the Protect TM if you visit her in her lab.