We formulate the control problem in gene regulatory networks as an inverse perturbation problem, which provides the feasible set of perturbations that force the network to transition from an undesirable steady-state distribution to a desirable one. We derive a general characterization of such perturbations in an appropriate basis representation. We subsequently consider the optimal perturbation, which minimizes the overall energy of change between the original and controlled (perturbed) networks. The "energy" of change is characterized by the Euclidean-norm of the perturbation matrix. We cast the optimal control problem as a semi-definite programming (SDP) problem, thus providing a globally optimal solution which can be efficiently computed using standard SDP solvers. We apply the proposed control to the Human melanoma gene regulatory network and show that the steady-state probability mass is shifted from the undesirable high metastatic states to the chosen steady-state probability mass.