This application relates generally to data processing and, more specifically, to systems and methods for predicting network activities associated with a given site.
Predicting network activity helps service providers and enterprises manage and react to change within their systems. For example, one of the most pressing problems the Internet community faces today is network activity that enables attackers to gain unauthorized access to resources or disrupt services of a network site. Network acts performed over a network can include various Distributed Denial of Service (DDoS) attacks, spamming, financial information theft, misdirected queries, and so forth. To prevent such network activity, network operators and other organizations can monitor traffic and detect suspicious network activity that is associated with network attacks. Service providers or enterprises can also use predictions of network activity to enhance the user experience.
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
Provided are computer implemented methods and systems for predicting network activity associated with a given network site. Using the methods or systems described herein, a service provider or an enterprise can selectively investigate and/or monitor a network site based on a probability that the network site will be involved in a specific network activity in the future.
The service provider or enterprise can send a request to the system for predicting a network activity with a network site. The system for predicting network activity can retrieve historical data related to the activity of the network site and analyze the historical data for signs of past network activities. Based on the analysis, a probability of future network site participation in the network activity can be determined.
In some embodiments, the probability is further determined based on certain environmental parameters (for example, a name of a domain associated with the network site, a malware risk associated with the network site, a general speed of network traffic, related network sites, and so forth).
To confirm the probability, activities of the network site can be monitored during a specific time period. If the monitoring results in evidence of the network activity, the network activity is confirmed. Furthermore, the calculated probability can be reevaluated and refreshed based on the received evidence.
If the probability of a network activity occurring exceeds a predefined threshold, actions ranging from notifying the service provider or enterprise to blocking, redirecting or providing interstitial activities relating to the network site can be taken. In some embodiments, the performed action depends on the value of the probability of the network activity.
The resulting data, which can include a domain name of the network site, a time range of the historical analysis and/or monitoring, the probability value, the network action associated with the network site, confirmation of the network activity, and so forth, can be graphically presented to a user on a graphical user interface or presented as a report, sent via e-mail, provided for downloading, and so forth.
In further exemplary embodiments, modules, subsystems, or devices can be adapted to perform the recited steps. Other features and exemplary embodiments are described below.
Embodiments are illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like references indicate similar elements.
Network operators or enterprises can employ a variety of tools to manage and react to network activity, which can range from a malicious activity, such as spamming, to a Distributed Denial of Service (DDoS) attacks, misdirected queries, and actions of misconfiguration, such as traffic shaping, traffic redirection, interstitial activity, file downloading, association with further network sites, synchronization time with the further network sites, and so forth. A network activity can be associated with one or more domain names. Domain names are used to operate malicious networks (for example, bonnet). Conventional methods of tracking network activity have proved inefficient because of the quantity of existing domains.
Provided are methods and systems for predicting network activities associated with a network site based on historical data associated with a domain name of the network site.
The following detailed description includes references to the accompanying drawings, which form a part of the detailed description. The drawings show illustrations in accordance with exemplary embodiments. These exemplary embodiments, which are also referred to herein as “examples,” are described in enough detail to enable those skilled in the art to practice the present subject matter. The embodiments can be combined, and other embodiments can be formed, by introducing structural and logical changes without departing from the scope of what is claimed. The following detailed description is, therefore, not to be taken in a limiting sense and the scope is defined by the appended claims and their equivalents.
In this document, the terms “a” or “an” are used, as is common in patent documents, to include one or more than one. In this document, the term “or” is used to refer to a nonexclusive “or,” such that “A or B” includes “A but not B,” “B but not A,” and “A and B,” unless otherwise indicated. Furthermore, all publications, patents, and patent documents referred to in this document are incorporated by reference herein in their entirety, as though individually incorporated by reference. In the event of inconsistent usages between this document and those documents so incorporated by reference, the usage in the incorporated reference(s) should be considered supplementary to that of this document; for irreconcilable inconsistencies, the usage in this document controls.
The network site 140 resides and acts in a network 110. The network 110 may include the Internet or any other network capable of communicating data between devices. Suitable networks may include or interface with any one or more of, for instance, a local intranet, a PAN (Personal Area Network), a LAN (Local Area Network), a WAN (Wide Area Network), a MAN (Metropolitan Area Network), a virtual private network (VPN), a storage area network (SAN), a frame relay connection, an Advanced Intelligent Network (AIN) connection, a synchronous optical network (SONET) connection, a digital T1, T3, E1 or E3 line, Digital Data Service (DDS) connection, DSL (Digital Subscriber Line) connection, an Ethernet connection, an ISDN (Integrated Services Digital Network) line, a dial-up port such as a V.90, V.34 or V.34bis analog modem connection, a cable modem, an ATM (Asynchronous Transfer Mode) connection, or an FDDI (Fiber Distributed Data Interface) or CDDI (Copper Distributed Data Interface) connection. Furthermore, communications may also include links to any of a variety of wireless networks, including WAP (Wireless Application Protocol), GPRS (General Packet Radio Service), GSM (Global System for Mobile Communication), CDMA (Code Division Multiple Access) or TDMA (Time Division Multiple Access), cellular phone networks, GPS (Global Positioning System), CDPD (cellular digital packet data), RIM (Research in Motion, Limited) duplex paging network, Bluetooth radio, an IEEE 802.11-based radio frequency network, or a worldwide interoperability for microwave access (WiMAX) network. The network 110 can further include or interface with any one or more of an RS-232 serial connection, an IEEE-1394 (Firewire) connection, a Fiber Channel connection, an IrDA (infrared) port, a SCSI (Small Computer Systems Interface) connection, a Universal Serial Bus (USB) connection or other wired or wireless, digital or analog interface or connection, mesh or Digi® networking. The network 110 may include any suitable number and type of devices (e.g., routers and switches) for forwarding commands, content, and/or web object requests from each client to the online community application and responses back to the clients.
The system 200 obtains and analyzes historical data associated with the network site 140 (for example, activity related to the network site 140). The purpose of the analysis is to determine the probability of the network activity for the network site 140 in future. If the probability exceeds a predetermined threshold, further actions can be performed by the system 200. In some embodiments, the system 200 sends a report 150 on the probability of network activity associated with the network site 140 to the interested party 120.
The communication module 210 can be configurable to provide a communication channel between the system 200 and various components of the environment 100, including but not limited to, the interested party 120, network 110, and a network site 140. Additionally, the communication module 210 may enable direct exchange of information between various modules of the system 200.
The analyzing engine 220 is used for analyzing historical data, logs, messages, logins, and timing to detect signs of network activity and/or associated events. The findings are used to determine the likelihood of the site being employed for network actions. For example, it may be determined that the probability of the network activity associated with the network site is 60%.
The monitoring module 230 can be configurable to monitor the network site and its activity during a specific time range. The time range can be specified by the interested party, automatically determined by the system 200, or dynamically adjusted according to the findings of the monitoring. Thus, the monitoring module 230 can ascertain an evidence of the network activity and give a confirmation of the network activity. Furthermore, the monitoring module 230 can adjust treatment of the network site.
The comparing module 240 can compare the determined probability to a predetermined threshold probability. If the determined probability is equal to or exceeds a predetermined threshold probability, the reporting module 250 can report the probability, warn an interested party and/or an operator, perform a further investigation of the network site, block the network site, redirect network traffic associated with the network site, and so forth. The reporting module 250 can report substantially real-time network traffic data to the real-time data aggregator 260.
The method 300 may commence at operation 310 with the communication module receiving a request from the interested party, such as a service provider or an enterprise. The request can be associated with a specific network site. At operation 320, historical data associated with the network site can be obtained and analyzed. The historical data can include information about one or more past network activities, or known network actions associated with the network site. If the analysis reveals signs of network activity, the findings are analyzed to determine the probability of network activity in which the network site is involved, at operation 330. For example, it can be determined that the probability is 30%, 50%, 80%, and so forth.
Optionally, the method can continue with operation 340. To avoid false positive determination of a network site as a source of network activity, the monitoring module can monitor the network site for a predefined period of time at operation 340. For example, a spam mitigation solution may accidentally block legitimate email traffic. There are a variety of measures that may be taken within the system 200 to confirm the determined probability. If there is a possibility that the network site has some legitimate purpose, no action will be taken but the site will instead be monitored until the level of certainty approaches a predetermined level.
Thus, the monitoring module can monitor requests, messages, logins, and other network activities related to the network site, as well as misdirected queries to the network site. During the monitoring, one or more evidences associated with the network activity can be ascertained at operation 350. The evidences can include specific actions performed on behalf of the network site in specific time, and so forth. In some embodiments, the probability determined at operation 330 can be reevaluated based on the evidence. Additionally, once the evidences are ascertained, a treatment of the network site can be adjusted at operation 360.
In some embodiments, further factors, such as environmental parameters, can be considered to adjust the probability. The environmental parameters can include one or more of the following: a name of a domain associated with the network site, an association with a further network site, a correlation between the network site and the further network site, a malware risk associated with the network site, an activity associated with the network site, a general security state, related network sites, and a speed of network traffic.
At operation 370, the probability can be compared to a predetermined threshold probability. For example, the predetermined threshold probability can be set to 50%. If the determined and/or reevaluated probability exceeds the predetermined threshold probability, an action can be taken at operation 380. The action includes one or more of the following: reporting the probability, warning the interested party, performing a further investigation of the network site, blocking the network site, redirecting network traffic associated with the network site, and so forth. The action to take can be selected based on the probability value. For example, the specific actions can be associated with certain probability values. In some example embodiments, if the probability is determined to be 80%, the network site is blocked, while a probability determined to be 60% triggers a warning to the interested party.
In some embodiments, the probability is reported by providing a graphic representation of attributes associated with the network activity. For example, the attributes can be displayed via a graphical user interface of the system 200. In further embodiments, the probability can be reported by presenting a report to an interested party. The report can be sent via e-mail, provided for downloading, and so forth.
An example representation 400 of network activity attributes 410 is shown in
The components shown in
Mass storage device 530, which may be implemented with a magnetic disk drive or an optical disk drive, is a non-volatile storage device for storing data and instructions for use by processor 510. Mass storage device 530 can store the system software for implementing embodiments of the disclosed technology for purposes of loading that software into main memory 520.
Portable storage medium drive 540 operates in conjunction with a portable non-volatile storage medium, such as a floppy disk, compact disk (CD), or digital video disc (DVD), to input and output data and code to and from the computer system 500 of
Input devices 560 provide a portion of a user interface. Input devices 560 may include an alphanumeric keypad, such as a keyboard, for inputting alphanumeric and other information, or a pointing device, such as a mouse, trackball, stylus, or cursor direction keys. Additionally, the computing system 500 as shown in
Display system 570 may include a liquid crystal display (LCD) or other suitable display device. Display system 570 receives textual and graphical information and processes the information for output to the display device.
Peripheral device(s) 580 may include any type of computer support device to add additional functionality to the computer system. Peripheral device(s) 580 may include a modem or a router.
The components contained in the computer system 500 of
Some of the above-described functions may be composed of instructions that are stored on storage media (e.g., a computer-readable medium). The instructions may be retrieved and executed by the processor. Some examples of storage media are memory devices, tapes, disks, and the like. The instructions are operational when executed by the processor to direct the processor to operate in accord with the disclosed technology. Those skilled in the art are familiar with instructions, processor(s), and storage media.
It is noteworthy that any hardware platform suitable for performing the processing described herein is suitable for use with the disclosed technology. The terms “computer-readable storage medium” and “computer-readable storage media” as used herein refer to any medium or media that participate in providing instructions to a Central Processing Unit (CPU) for execution. Such media can take many forms, including, but not limited to, non-volatile media, volatile media and transmission media. Non-volatile media include, for example, optical or magnetic disks, such as a fixed disk. Volatile media include dynamic memory, such as system Random Access Memory (RAM). Transmission media include coaxial cables, copper wire and fiber optics, among others, including the wires that comprise one embodiment of a bus. Transmission media can also take the form of acoustic or light waves, such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, a hard disk, magnetic tape, any other magnetic medium, a CD-ROM disk, DVD, any other optical medium, any other physical medium with patterns of marks or holes, a RAM, a PROM, an EPROM, an EEPROM, a FLASHEPROM, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read.
Various forms of computer-readable media may be involved in carrying one or more sequences of one or more instructions to a CPU for execution. A bus carries the data to system RAM, from which a CPU retrieves and executes the instructions. The instructions received by system RAM can optionally be stored on a fixed disk either before or after execution by a CPU.
The above description is illustrative and not restrictive. Many variations of the invention will become apparent to those of skill in the art upon review of this disclosure. The scope of the invention should, therefore, be determined not with reference to the above description, but instead should be determined with reference to the appended claims along with their full scope of equivalents. While the present invention has been described in connection with a series of embodiments, these descriptions are not intended to limit the scope of the invention to the particular forms set forth herein. It will be further understood that the methods of the invention are not necessarily limited to the discrete steps or the order of the steps described. To the contrary, the present descriptions are intended to cover such alternatives, modifications, and equivalents as may be included within the spirit and scope of the invention as defined by the appended claims and otherwise appreciated by one of ordinary skill in the art.
One skilled in the art will recognize that the Internet service may be configured to provide Internet access to one or more computing devices that are coupled to the Internet service, and that the computing devices may include one or more processors, buses, memory devices, display devices, input/output devices, and the like. Furthermore, those skilled in the art may appreciate that the Internet service may be coupled to one or more databases, repositories, servers, and the like, which may be utilized in order to implement any of the embodiments of the disclosure as described herein.
While specific embodiments of, and examples for, the system are described above for illustrative purposes, various equivalent modifications are possible within the scope of the system, as those skilled in the relevant art will recognize. For example, while processes or steps are presented in a given order, alternative embodiments may perform routines having steps in a different order, and some processes or steps may be deleted, moved, added, subdivided, combined, and/or modified to provide alternative or subcombinations. Each of these processes or steps may be implemented in a variety of different ways. Also, while processes or steps are at times shown as being performed in series, these processes or steps may instead be performed in parallel, or may be performed at different times.
From the foregoing, it will be appreciated that specific embodiments of the system have been described herein for purposes of illustration, but that various modifications may be made without deviating from the spirit and scope of the system. Accordingly, the system is not limited except as by the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
5978568 | Abraham et al. | Nov 1999 | A |
6396830 | Aravamudan et al. | May 2002 | B2 |
6493551 | Wang et al. | Dec 2002 | B1 |
6687245 | Fangman et al. | Feb 2004 | B2 |
6961783 | Cook et al. | Nov 2005 | B1 |
7046659 | Woundy | May 2006 | B1 |
7188175 | McKeeth | Mar 2007 | B1 |
7594260 | Porras | Sep 2009 | B2 |
7600042 | Lemson et al. | Oct 2009 | B2 |
7840699 | Fujita et al. | Nov 2010 | B2 |
8015271 | McKeown et al. | Sep 2011 | B2 |
8095685 | Mattila | Jan 2012 | B2 |
8549118 | Ringen | Oct 2013 | B2 |
8554933 | Delos Reyes et al. | Oct 2013 | B2 |
8656026 | Prasad et al. | Feb 2014 | B1 |
8707429 | Wilbourn et al. | Apr 2014 | B2 |
8744367 | Gerber | Jun 2014 | B2 |
8762506 | Courtney et al. | Jun 2014 | B2 |
8769060 | Avirneni et al. | Jul 2014 | B2 |
8788654 | Hildebrand | Jul 2014 | B2 |
8806629 | Cherepov | Aug 2014 | B1 |
8874662 | Graham et al. | Oct 2014 | B2 |
8996669 | Liu et al. | Mar 2015 | B2 |
9058381 | Thomas | Jun 2015 | B2 |
9083562 | Bates | Jul 2015 | B2 |
9215123 | Fears et al. | Dec 2015 | B1 |
9220066 | Gerber | Dec 2015 | B2 |
9374824 | Gerber | Jun 2016 | B2 |
9396444 | Bates | Jul 2016 | B2 |
9686275 | Chari et al. | Jun 2017 | B2 |
9699737 | Gerber | Jul 2017 | B2 |
20010034759 | Chiles et al. | Oct 2001 | A1 |
20010043595 | Aravamudan et al. | Nov 2001 | A1 |
20010044903 | Yamamoto et al. | Nov 2001 | A1 |
20020143705 | Kaars | Oct 2002 | A1 |
20030177236 | Goto et al. | Sep 2003 | A1 |
20050060535 | Bartas | Mar 2005 | A1 |
20050102529 | Buddhikot et al. | May 2005 | A1 |
20050111384 | Ishihara et al. | May 2005 | A1 |
20050125195 | Brendel | Jun 2005 | A1 |
20050276272 | Arai | Dec 2005 | A1 |
20060020525 | Borelli et al. | Jan 2006 | A1 |
20060062228 | Ota et al. | Mar 2006 | A1 |
20060168065 | Martin | Jul 2006 | A1 |
20070058792 | Chaudhari et al. | Mar 2007 | A1 |
20070079379 | Sprosts et al. | Apr 2007 | A1 |
20070088815 | Ma et al. | Apr 2007 | A1 |
20080259941 | Zhao et al. | Oct 2008 | A1 |
20090067331 | Watsen et al. | Mar 2009 | A1 |
20090129301 | Belimpasakis | May 2009 | A1 |
20090144419 | Riordan et al. | Jun 2009 | A1 |
20090253404 | Alston et al. | Oct 2009 | A1 |
20090282028 | Subotin et al. | Nov 2009 | A1 |
20090282038 | Subotin et al. | Nov 2009 | A1 |
20090296567 | Yasrebi et al. | Dec 2009 | A1 |
20100030914 | Sparks et al. | Feb 2010 | A1 |
20100106854 | Kim et al. | Apr 2010 | A1 |
20100121981 | Drako | May 2010 | A1 |
20100131646 | Drako | May 2010 | A1 |
20100211628 | Shah | Aug 2010 | A1 |
20100217837 | Ansari et al. | Aug 2010 | A1 |
20100303009 | Liu | Dec 2010 | A1 |
20110213967 | Wnuk | Sep 2011 | A1 |
20110246634 | Liu et al. | Oct 2011 | A1 |
20110296171 | Fu et al. | Dec 2011 | A1 |
20110296172 | Fu et al. | Dec 2011 | A1 |
20120036241 | Jennings et al. | Feb 2012 | A1 |
20120178416 | Miklos et al. | Jul 2012 | A1 |
20120198034 | Avirneni et al. | Aug 2012 | A1 |
20120246315 | Kagan | Sep 2012 | A1 |
20120254996 | Wilbourn et al. | Oct 2012 | A1 |
20130333016 | Coughlin et al. | Dec 2013 | A1 |
20140052984 | Gupta | Feb 2014 | A1 |
20140123222 | Omar | May 2014 | A1 |
20160099961 | Paugh et al. | Apr 2016 | A1 |
Entry |
---|
Wentao Zhao, Jianping Yin, Jun Long, “A Prediction Model of DoS Attack's Distribution Discrete Probability”, Web-Age Information Management, 2008. WAIM '08. The Ninth International Conference on, Jul. 20, 2008, pp. 625-628. |
Andrew W. Moore, Denis Zuev, “Internet Traffic Classification Using Bayesian Analysis Techniques”, SIGMETRICS '05 Proceedings of the 2005 ACM SIGMETRICS international conference on Measurement and modeling of computer systems, ACM SIGMETRICS Performance Evaluation Review—Performance evaluation review, vol. 33 Issue 1, Jun. 2005, pp. 50-60. |
Saman Taghavi Zargar, James Joshi and David Tipper, “A Survey of Defense Mechanisms Against Distributed Denial of Service (DDoS) Flooding Attacks”, IEEE Communications Surveys & Tutorials ( vol. 15, Issue: 4, Fourth Quarter 2013 ), 2013, pp. 2046-2069. |
Jun Zhang, Chao Chen, Yang Xiang, Wanlei Zhou, “Internet Traffic Classification by Aggregating Correlated Naive Bayes Predictions”, IEEE Transactions on Information Forensics and Security ( vol. 8, Issue: 1, Jan. 2013 ), 2013, pp. 5-15. |
Social restricted Boltzmann Machine: Human behavior prediction in health social networks NhatHai Phan; Dejing Dou; Brigitte Piniewski; David Kil 2015 IEEE/ACM International Conference on Advances in Social Networks Analysis and Mining (ASONAM) Year: 2015 pp. 424-431 IEEE Conference Publications. |
Collaborative Scheduling in Dynamic Environments Using Error Inference Qingquan Zhang; Lingkun Fu; Yu Jason Gu; Lin Gu; Qing Cao; Jiming Chen; Tian He IEEE Transactions on Parallel and Distributed Systems Year: 2014, vol. 25, Issue: 3 pp. 591-601 IEEE Journals & Magazines. |
Spectrum Prediction in Cognitive Radio Networks: A Bayesian Approach Jaison Jacob; Babita R. Jose; Jimson Mathew 2014 Eighth International Conference on Next Generation Mobile Apps, Services and Technologies Year: 2014 pp. 203-208 IEEE Conference Publications. |
On-line diagnosis of a power generation process using probabilistic models Pablo H. Ibargüengoytia; Alberto Reyes 2011 16th International Conference on Intelligent System Applications to Power Systems Year: 2011 pp. 1-6 IEEE Conference Publications. |
Non-Final Office Action, dated Jul. 3, 2012, U.S. Appl. No. 12/753,827, filed Apr. 2, 2010. |
Final Office Action, dated Apr. 24, 2013, U.S. Appl. No. 12/753,827, filed Apr. 2, 2010. |
Non-Final Office Action, dated Jun. 23, 2014, U.S. Appl. No. 12/753,827, filed Apr. 2, 2010. |
Final Office Action, dated Sep. 24, 2014, U.S. Appl. No. 12/753,827, filed Apr. 2, 2010. |
Notice of Allowance, dated Jan. 9, 2015, U.S. Appl. No. 12/753,827, filed Apr. 2, 2010. |
Non-Final Office Action, dated Feb. 11, 2013, U.S. Appl. No. 13/077,934, filed Mar. 31, 2011. |
Notice of Allowance, dated Nov. 25, 2013, U.S. Appl. No. 13/077,934, filed Mar. 31, 2011. |
Notice of Allowance, dated Jan. 30, 2014, U.S. Appl. No. 13/016,832, filed Jan. 28, 2011. |
Non-Final Office Action, dated Jan. 21, 2015, U.S. Appl. No. 13/839,331, filed Mar. 15, 2013. |
Notice of Allowance, dated Jul. 24, 2015, U.S. Appl. No. 13/839,331, filed Mar. 15, 2013. |
Non-Final Office Action, dated Jul. 28, 2015, U.S. Appl. No. 14/266,557, filed Apr. 30, 2014. |
Park, Jeong-Hyun, “Wireless Internet Access for Mobile Subscribers Based on the GPRS/UMTS Network,” Communications Magazine, IEEE, vol. 40, No. 4, pp. 38-49, Apr. 2002. |
Vixie et al., “Secret Key Transaction Authentication for DNS (TSIG),” Network Working Group, May 2000, http://tools.ietf.org/pdf/rfc2845.pdf. |
Messaging Anti-Abuse Working Group, Methods for Sharing Dynamic IP Address Space Information with Others, 2008, retrieved online Jul. 20, 2015; avaialble at: <https://www.m3aawg.org/sites/default/files/document—MAAWG—Dynamic—Space—2008-06.pdf>. |
Final Office Action dated Jan. 29, 2016, U.S. Appl. No. 14/266,557, filed Apr. 30, 2014. |