1. A method for processing queries from a user device by a server, comprising: receiving, by the server, from a security software deployed on a user device, a system state and configuration information of the user device; analyzing, by the server, the collected system state and configuration information to determine a level of trust associated with the user device; receiving, by the server, one or more queries from a security software of the user device directed to one or more services provided by the server, wherein the security software is configured to follow different procedures for contacting different services; analyzing the one or more queries received from the security software to determine whether the security software followed a correct procedure for contacting one or more services, wherein the correct procedure includes contacting different services in a specific order; based on the determination of whether the security software followed a correct or incorrect procedure for contacting the server, determining whether to update or not update the level of trust associated with the user device; determining, based on the level of trust, how to process the one or more queries; and providing different responses to the one or more queries from the security software based on the determination of how to process the one or more queries.