A method of filtering data packets in General Packet Radio Service (GPRS) Tunneling Protocol (GTP) signaling messages. Selected messages from GTP Path Management, GTP Tunnel Management, GTP Mobility Management, and GTP Location Management messages are analyzed against a plurality of filtering criteria, and data packets that do not meet the filtering criteria are dropped while data packets that meet the criteria are passed. The data packets may be analyzed to verify that they contain correct source, destination, and mask addresses, and that they contain UDP/TCP port numbers that are consistent with the GTP version number. The packets are also inspected at the GTP level, layer-5, and based on the GTP version, information in the GTP header, and accompanying Information Elements (IEs), selected data packets are dropped.