Embedded devices has its hands over all fields, however they are easily vulnerable for external attacks, any third party can easily cause its system to fail by modifying any one of the component that they depend. Further the codes that these devices execute are more vulnerable to the attacks as a single change in its execution can change its behaviour. Therefore it is necessary that these devices are highly secured. Security can be increased at the design level to be more hard to external attacks, further continuous monitoring of the codes provide means of checking if any harmful codes are executed. This paper provides a review of the existing methods to detect if the code being executed is malicious or not thereby deciding whether to allow or stop the execution also few design strategy which could increase the security of the embedded devices.