Generally speaking, good and bad are based on the social norms. Whatever the majority of the public sees as good, is, and whatever the majority of the public sees as bad, is.
On a personal level though, that changes. Good and bad don't really exist. There is no black and white but a massive field of grays. Killing that serial killing could be seen as good, or it could be seen as bad. Robin Hood stole. Stealing is generally accepted as bad. But he gave what he stole to those who truly needed it. That's generally accepted as good, not that he stole but that he gave it to those who needed it.
What is good and what is bad is based entirely on your own morals. But those morals can be changed, can shift, be persuaded, by your surroundings. What the media tells you, what you see being done when you walk outside or watch a major, or even minor, disaster happen before your eyes. To most people, 9/11 is seen as bad, while to some other people, 9/11 is seen as good.
Religion, unsurprisingly, has a lot to do with this. Many religions have their own lists and laws and rules about what is good and what is bad. Thus, a lot of those rules, laws, lists get generally accepted into areas, depending on where and what the majority is and the rulers of the area.