A vector has both magnitude and direction. Does it mean that anything that has magnitude and direction is necessarily a vector ? The rotation of a body can be specified by the direction of the axis of rotation, and the angle of rotation about the axis. Does that make any rotation a vector ?

No, anything that has both magnitude and direction is not necessarily a vector. It must obey the laws of vector addition.

Rotation is not generally considered a vector even though it has magnitude and direction because the addition of two finite rotations does not obey commutative law. However, infinitesimally small rotations obey commutative law and hence an infinitesimally small rotation is considered a vector