A method for reporting a virus, comprising: determining (201, 301, 401, 501), by a client device, at least one virus sample according to different anti-virus engines; determining, by the client device, whether a network connecting the client device and a server is unobstructed; upon determining that the network is unobstructed, transmitting (202, 302, 403, 502), by the client device, sample information of the at least one virus sample to the server, the server determining a first virus sample set that needs to be reported according to the sample information of the at least one virus sample and a predefined sample information list in the server, and returning the first virus sample set to the client device; wherein the predefined sample information list comprises a white list and a black list; upon determining that the sample information of the at least one virus sample comprises sample information of a first virus sample in the white list, the server determines that the first virus sample does not need to be reported; and upon determining that the sample information of the at least one virus sample comprises sample information of a second virus sample in the black list, the server determines that the second virus sample needs to be reported and puts the second virus sample into the first virus sample set; receiving (203, 303, 404), by the client device, the first virus sample set that needs to be reported; and performing a virus reporting operation according to the first virus sample set; upon determining that the network is obstructed, determining, by the client device, an intersection of virus samples determined by the different anti-virus engines, and obtaining by the client device, a second virus sample set that needs to be reported according to the intersection; and performing, by the client device, a virus reporting operation according to the second virus sample set. determining (201, 301, 401, 501), by a client device, at least one virus sample according to different anti-virus engines; determining, by the client device, whether a network connecting the client device and a server is unobstructed; upon determining that the network is unobstructed, transmitting (202, 302, 403, 502), by the client device, sample information of the at least one virus sample to the server, the server determining a first virus sample set that needs to be reported according to the sample information of the at least one virus sample and a predefined sample information list in the server, and returning the first virus sample set to the client device; wherein the predefined sample information list comprises a white list and a black list; upon determining that the sample information of the at least one virus sample comprises sample information of a first virus sample in the white list, the server determines that the first virus sample does not need to be reported; and upon determining that the sample information of the at least one virus sample comprises sample information of a second virus sample in the black list, the server determines that the second virus sample needs to be reported and puts the second virus sample into the first virus sample set; receiving (203, 303, 404), by the client device, the first virus sample set that needs to be reported; and performing a virus reporting operation according to the first virus sample set; upon determining that the network is obstructed, determining, by the client device, an intersection of virus samples determined by the different anti-virus engines, and obtaining by the client device, a second virus sample set that needs to be reported according to the intersection; and performing, by the client device, a virus reporting operation according to the second virus sample set.