Weaknesses are just that... Until they are not...
Just as strong as your dreams are, that's how strong your demons will be. If you are to conquer them, you will need to train. If you don't do any form of spiritual training, you have no choice but to lose. Your whole life is a series of tests. If you don't have spiritual training to back up and solidify your morality you will generally have a very tough time. Just doing good deeds is a form of training,being a nice person is a form of training, being loving even in dark times is a form of training, fasting is a form of training, being charitable is a form of training, etc... then you have more conventional spiritual practices as well...(martial arts, meditation, qi gong, chanting etc)
But if you don't train in something you will have no choice but to fall to the darkness that is inevitably around you if you live in this world. There are people on a collision course with the hell that you will have to deal with... Some of these people are highly motivated to destroy good people, because well... it's a sport for them. Even good people will sometimes try to destroy each other... Why? Well, who the hell knows, but it happens... But if you don't train yourself to be a better person every day, then you will subject your internal weaknesses to the hands of darkness that may confront you.