I can't recall situations in which it's not. So, yes, "кто" and words which derived from "кто" ("кто-то", "некто" and so on) are masculine, "что", "что-то", "нечто" are neuter.Is кто always masculine?
Is что always neuter?
However when you talk with russian natives you can hear sentences in which this rule doesn't work. It happens when speaker says "кто" but implies a woman.
For example: some woman has met a little girl and wish to make a compliment, to flatter. She can ask (factitiously):
- Кто это у нас тут такая нарядная? Кто такая красивая?
If my memory serves me, it's a mistake (in high, literary style), however in every day speech it happens often, very often.