WO2017171188A1 - 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치 - Google Patents

웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치 Download PDF

Info

Publication number
WO2017171188A1
WO2017171188A1 PCT/KR2016/013134 KR2016013134W WO2017171188A1 WO 2017171188 A1 WO2017171188 A1 WO 2017171188A1 KR 2016013134 W KR2016013134 W KR 2016013134W WO 2017171188 A1 WO2017171188 A1 WO 2017171188A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
user
web
server
transaction
Prior art date
Application number
PCT/KR2016/013134
Other languages
English (en)
French (fr)
Inventor
이석우
Original Assignee
주식회사 엘리바이저
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020160040323A external-priority patent/KR101658456B1/ko
Priority claimed from KR1020160040326A external-priority patent/KR101650475B1/ko
Application filed by 주식회사 엘리바이저 filed Critical 주식회사 엘리바이저
Priority to US15/766,005 priority Critical patent/US10728267B2/en
Publication of WO2017171188A1 publication Critical patent/WO2017171188A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding

Definitions

  • Embodiments of the present invention relate to a security apparatus using transaction information collected from a web application server or a web server, and more particularly, to perform logical security control using transaction information collected from a web application server or a web server.
  • the present invention relates to a security device using transaction information collected from a web application server or a web server.
  • the existing Intrusion Prevention System (IPS) and Intrusion Detection System (IDS) detect and analyze the contents (header + data) of packets transmitted to the network. It was a physical security control method to carry out the defense.
  • SSL / TSL functions in the encrypted section, so i) Undetectable analysis of SSL / TSL encrypted attack is not possible, ii) Packet follow analysis is impossible, iii) Cannot cope with attack after normal authentication iv)
  • There was a problem such as limitation of abnormal transaction identification due to encryption.
  • the transaction information is received from the WAS plug-in agent installed in the web application server or the WEB plug-in agent installed in the web server, and whether it is normal transaction information or abnormal transaction information.
  • the WAS plug-in agent is installed and operated in a plug-in manner in the web application server, collects transaction information of the user decrypted in the web server or the web application server in the memory of the web application server, the WEB plug-in agent is the web It is installed and operated on a server in a plug-in manner, and the transaction information of the user decrypted by the web server may be collected in the memory of the web server.
  • the WAS plug-in agent When the WAS plug-in agent requests a service to a user's web application server, the WAS plug-in agent detects whether there is a unique session ID that does not change in the persistent cookie. If there is no unique session ID, the WAS plug-in agent generates a unique session ID for the user and generates the user's web client.
  • the unique session ID management module may be configured to set the generated unique session ID in the persistent cookie so that a user may be identified by the unique session ID in a subsequent service request.
  • the WAS plug-in agent analyzes the HTTP header included in the transaction information to determine HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referer, Accept-Encoding, Accept-Language, Cookie, HTTP header information collection module for collecting other header information, attribute information, etc .;
  • a web session ID collection module for collecting a user session ID and the unique session ID from the transaction information;
  • a user ID information collection module for collecting the transaction information and user ID information included in the transaction processing;
  • a DB access information collecting module for collecting SQL execution number, SQL Bind variable, Select number, Insert number, Update number, Delete number and connection pool usage and connection pool non-return information from DB access information included in the transaction information;
  • a web application server information collection module for collecting information such as a host name of the web application server, a web application server container name and an instant name, a service port, an OS, and a web application resource usage;
  • the WEB plug-in agent When the WEB plug-in agent requests a service to a user's web server, the WEB plug-in agent detects whether there is a unique session ID that does not change in the persistent cookie. If there is no unique session ID, the WEB plug-in agent generates a unique session ID for the user and sends it to the user's web client.
  • the unique session ID management module may further include a unique session ID management module configured to set the generated unique session ID in a permanent cookie so that a user may be identified by the unique session ID in a subsequent service request.
  • the WEB plug-in agent analyzes the HTTP header included in the transaction information to determine HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referer, Accept-Encoding, Accept-Language, Cookie, An HTTP header information collection module for collecting at least one of other header information and attribute information; A web session ID collection module for collecting a user session ID and the unique session ID from the transaction information; A user ID information collection module for collecting the transaction information and user ID information included in the transaction processing; A web server information collection module for collecting information such as a host name of the web server, a web server container name and an instant name, a service port, an OS, and a web server resource usage; And Uniform Resource Identifier (URI) transaction information domain and access port information, access URI, call time, total response time, section response time, CPU resource usage, processing result, AP error and Query String information included in the transaction information.
  • the management server if the user session ID and the unique session ID is not maintained in the transaction information when the transaction information is requested again after the user session ID and the unique session ID is generated after the initial transaction information is requested First detection to detect a DDOS attack or web crawler, only the user session ID is maintained when the transaction information is re-requested, the user's web client is operated through a hacking program if the unique session ID is not maintained And a second session detection module for detecting at least one of a second detection for detecting a second detection and a third detection through mapping of the unique session ID and the user ID.
  • the session ID based detection module detects multiple users accessing the same terminal through mapping of the unique session ID and the user ID, detects the same user accessing from multiple terminals, and attacks through a proxy on one terminal. It can be detected to detect or to attack by changing the IP in one terminal.
  • an HTTP header information-based detection module including at least one of fourth detection for performing PCRE detection on the HTTP header information.
  • the management server may include: a session ID based statistical analysis module for providing transaction analysis continuity through the unique session ID, accurate time calculation, daily visit number calculation, transaction distribution map and statistical analysis for unique session ID; An HTTP header information based statistical analysis module for performing statistical analysis for each call browser using the HTTP header information; And a URI performance information based statistical analysis module for analyzing various statistical indicators for each domain and statistical information for each URI using the URI performance information.
  • a session ID based statistical analysis module for providing transaction analysis continuity through the unique session ID, accurate time calculation, daily visit number calculation, transaction distribution map and statistical analysis for unique session ID
  • An HTTP header information based statistical analysis module for performing statistical analysis for each call browser using the HTTP header information
  • a URI performance information based statistical analysis module for analyzing various statistical indicators for each domain and statistical information for each URI using the URI performance information.
  • the management server may include a blocking policy management module managing a blocking policy for user-agent blacklist management, blocking method management, blocking session ID management, blocking user ID management, and blocking user IP management;
  • Blocking control module further comprises a blocking policy control module for controlling the blocking policy, such as permanent block control, time setting block control, automatic block control, manual block control, the block control module is the WAS through the communication module
  • the blocking policy may be transmitted to the plug-in agent, and when an abnormal transaction is detected, the blocking command may be transmitted to the WAS plug-in agent.
  • the WAS plug-in agent or the WEB plug-in agent may further include an abnormal transaction management module that performs a blocking function for a transaction corresponding to the blocking command when receiving the blocking command from the blocking control module.
  • the management server DB access information based detection module for detecting an abnormal transaction by detecting a mass data query using the DB access information, or by detecting a Perl Compatible Regular Expressions (PCRE) pattern for SQL queries and bind variables; And a statistical data-based detection module for detecting excessive call by user, specific URI repetitive call detection by user, ranking sudden rise detection based on call ranking by URI, and abnormal URI call flow through user identification based on the same unique session ID. can do.
  • PCE Perl Compatible Regular Expressions
  • the management server is based on statistical data for detecting excessive call by user, specific URI repetitive call detection by user, ranking sudden rise detection based on call ranking by URI, and abnormal URI call flow through user identification based on the same unique session ID. It may include a detection module.
  • the present invention it is possible to detect an attack encrypted by SSL / TSL through analysis of the decrypted transaction information, and to respond to a web hacking attack at the session level after a normal login.
  • FIG. 1 is a view showing an example of a conventional security control system.
  • FIG. 2 is a view showing an example of a security control system according to an embodiment of the present invention.
  • FIG 3 and 4 are views illustrating an example of a security control system including a security device according to an embodiment of the present invention.
  • FIG 5 and 6 are views showing an example of a security control system including a security device according to an embodiment of the present invention.
  • FIG. 7 is a block diagram illustrating a detailed configuration of a WAS plug-in agent according to an embodiment of the present invention.
  • FIG. 8 is a block diagram showing a detailed configuration of a WEB plug-in agent according to an embodiment of the present invention.
  • FIG. 9 is a diagram illustrating an example of a method for managing a user session ID according to an embodiment of the present invention.
  • FIG. 10 is a diagram illustrating an example of a case of user identification according to an embodiment of the present invention.
  • FIG. 11 is a diagram illustrating an example of a process of assigning a unique session ID according to an embodiment of the present invention.
  • FIG. 12 is a diagram illustrating an example of a method of collecting user IDs according to an embodiment of the present invention.
  • FIG. 13 is a block diagram showing a detailed configuration of a management server according to an embodiment of the present invention.
  • FIG. 14 is a diagram illustrating unique session ID and user ID mapping detection according to an embodiment of the present invention.
  • 15 to 17 illustrate examples of performing detection based on HTTP header information according to an embodiment of the present invention.
  • FIG. 18 is a diagram illustrating an example of a statistical data based detection method using unique session ID based user identification according to an embodiment of the present invention.
  • the transaction information is received from the WAS plug-in agent installed in the web application server or the WEB plug-in agent installed in the web server, and analyzed whether it is normal transaction information or abnormal transaction information, and according to the analysis result.
  • a security device using transaction information collected from a web application server or a web server, including a management server that generates detection information and transmits a blocking command for the abnormal transaction to the WAS plug-in agent, may be provided.
  • FIG. 2 is a view showing an example of a security control system according to an embodiment of the present invention.
  • the present invention provides the WAS plug-in agent 50 or the web server 30 installed in the web application server 40 with the transaction information of the user requested by the SSL / TSL decrypted by the web server 30 or the web application server 40. Collected by the WEB plug-in agent 51, and performs intrusion detection and blocking and statistical analysis of transaction information using the collected transaction information, thereby limiting the limitation of the IPS / IDS 10 by the encrypted transaction data. It is characterized by overcoming.
  • the present invention it is possible to analyze encrypted SSL / TSL transaction information, and packet follow analysis is possible. In addition, it is possible to cope with an attack after normal authentication in the web server 30 or the web application server 40, and it is possible to identify an abnormal transaction. In addition, it is possible to detect the session level through the decrypted various types of transaction information collected by the WAS plug-in agent 50 or the WEB plug-in agent 70, and based on transaction statistics.
  • FIG 3 and 4 are views illustrating an example of a security control system including a security device according to an embodiment of the present invention.
  • a security device may include a WAS plug-in agent 50-1 to 50-n (hereinafter, 50) and a management server 53.
  • the WAS plug-in agent 50 is installed and operated in the web application servers 40-1 to 40-n (hereinafter, referred to as 40), and the web server 30 or the web application server 40 in real time from the memory of the web application server 40. ) Collects the transaction information of the requested user with SSL / TSL decrypted.
  • the request encrypted with SSL / TSL transmitted to the web server 30 may be decrypted by the user through authentication through a certificate in the web server 30 or the web application server 40.
  • the transaction information collected by the WAS plug-in agent 50 may include at least one of HTTP header information, URI (Uniform Resource Identifie) transaction information, access information of a database, and web application server information included in a packet.
  • HTTP header information e.g., HTTP header information
  • URI Uniform Resource Identifie
  • FIG 5 and 6 are views illustrating an example of a security control system including a security device according to another embodiment of the present invention.
  • a security device may include WEB plug-in agents 70-1 to 70-n (hereinafter 70) and a management server 53.
  • the WEB plug-in agent 70 is installed and operated in the web servers 30-1 to 30-n (hereinafter, referred to as 30), and requests the SSL / TSL decrypted by the web server 30 in real time from the memory of the web server 30.
  • the SSL / TSL encrypted request transmitted to the web server 30 may be decrypted by the user through authentication through a certificate or the like in the web server 30.
  • the transaction information collected by the WEB plug-in agent 70 may include at least one of HTTP header information, URI (Uniform Resource Identifie) transaction information, and web application server information included in the packet.
  • HTTP header information e.g., HTTP header information
  • URI Uniform Resource Identifie
  • FIG. 7 is a block diagram illustrating a detailed configuration of a WAS plug-in agent according to an embodiment of the present invention.
  • the WAS plug-in agent 50 may include an information collection module 500, a unique thin line ID management module 510, an abnormal transaction management module 520, and a communication module 530.
  • the information collection module 500 collects HTTP header information collection module 501, web session ID collection module 503, user ID information collection module 505, DB access information collection module 507, and web application server information. Module 509, a URI information collection module 511, and the like.
  • the HTTP header information collection module 501 analyzes the HTTP header and collects information included in the HTTP header.
  • HTTP Method For example, collect HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referer, Accept-Encoding, Accetpt-Language, Cookie, other Header information, Attribute information from HTTP header information. can do.
  • the web session ID collection module 503 collects a user's web session ID and a unique session ID that does not change.
  • the user ID information collecting module 505 collects user ID information included in the transaction information.
  • the unique session ID management module 510 assigns a unique session ID that does not change for each user and identifies a user through the unique session ID.
  • the DB access information collection module 507 selects, inserts, and updates through collection of DB access information, DB connection pool usage, SQL execution, SQL Bind variable, and DML (data manipulation language) information during DB Access in the WAS plug-in agent. Collect access information of the database including the number, delete and connection pool usage, and connection pool non-return information.
  • the web application server information collection module 509 collects information such as a host name of the web application server 40, a web application server container name and an instant name, a service port, an OS, and a web application resource usage.
  • the URI performance information collection module 511 collects URI transaction information including domain and access port information, access URI call time, total response time, response time by section, CPU resource usage, processing result, AP error, and Query String information. do.
  • the abnormal transaction management module 520 performs a function of blocking policy management, abnormal transaction blocking, blocking status management according to a request from the management server 50, and the like.
  • the communication module 530 is a bidirectional communication module between the WAS plug-in agent 50 and the management server 53, and performs a mutual communication function on information collected by the WAS plug-in agent 50 and an abnormal transaction management policy.
  • FIG. 8 is a block diagram showing a detailed configuration of a WEB plug-in agent according to an embodiment of the present invention.
  • the WEB plug-in agent 70 may include an information collection module 700, a unique thin line ID management module 710, an abnormal transaction management module 720, and a communication module 730.
  • the information collection module 700 is HTTP header information collection module 701, web session ID collection module 703, user ID information collection module 705, web server information collection module 709, URI information collection module ( 711).
  • the HTTP header information collection module 701 analyzes the HTTP header and collects information included in the HTTP header.
  • HTTP Method For example, collect HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referrer, Accept-Encoding, Accept-Language, Cookie, other Header information, Attribute information from HTTP header information. can do.
  • the web session ID collection module 703 collects a user's web session ID and a unique session ID that does not change.
  • the user ID information collecting module 705 collects user ID information included in the transaction information.
  • the web server information collection module 709 collects information such as a host name of the web server 30, a web server container name and an instant name, a service port, an OS, and a web server resource usage.
  • the URI performance information collection module 711 collects URI transaction information including domain and access port information, access URI call time, total response time, response time by section, CPU resource usage, processing result, AP error, and Query String information. do.
  • the unique session ID management module 710 assigns a unique session ID that does not change for each user and identifies a user through the unique session ID.
  • the abnormal transaction management module 720 performs functions such as blocking policy management, abnormal transaction blocking, blocking status management according to a request from the management server 50.
  • the communication module 730 is a bidirectional communication module between the WEB plug-in agent 50 and the management server 53, and performs a mutual communication function for information collected by the WEB plug-in agent 50 and an abnormal transaction management policy.
  • HTTP protocol does not maintain TCP / IP connection, so various methods are used to maintain session.
  • the most widely used method is to store sensitive session information in the server (memory / file / DB, etc.) for security reasons, and to save the browser using a key value (session ID) cookie that can find the information.
  • the web application server 40 or the web server 30 classifies a user (web client) using a session ID sent from a browser, and the web application server 40 or the web server through the session ID for a URL requested after login. At 30, the login user is identified.
  • a web client 80 of a user may include a hard disk 81 or a web client memory 82.
  • the web application server 40 or the web server 30 When the user makes an initial service request to the web application server 40 or the web server 30 through the web client 80, the web application server 40 or the web server 30 generates a user session ID and adds it to the cookie. It can be applied to the response header and stored in the WAS session store.
  • the web client 80 When the user session ID is transmitted from the web application server 40 or the web server 70 to the web client 80, the web client 80 stores the user session ID. If the session ID retention time is set as shown in the a, it is stored in the web client memory 82, and if the session ID retention time is set as shown in the b, it can be stored in the Web client 80 memory and the hard disk 81. have.
  • the web application server 40 or the web server 70 classifies a user (web client) using a user session ID before logging in, and classifies a user using a user session ID and login information after logging in.
  • the user may use the web service through the web application server 40 or the web server 70. If the session ID holding time is set as shown in a, the user session ID is discarded when the web client terminates. When the user session ID retention time is set as shown in b, the user session ID may be discarded from the web client memory 82 and the hard disk 81 with respect to the user session ID after the set time.
  • the present invention Unlike the existing user session ID, the present invention generates a unique session ID generated by the unique session ID management module 510 of the WAS plug-in agent 50 or the unique thin line ID management module 710 of the WEB plug-in agent 70.
  • the web client restarts and provides the same session ID to enable user identification.
  • the session ID is changed when reconnecting to the web application server 40 or the web server 30.
  • the user IP included in the transaction information if the representative IP is shared in a specific group, the same user IP may be included even if the transaction information is different from each other, so that statistical analysis of the user based on the IP is difficult.
  • the unique session ID management module 510 or 710 assigns a unique session ID that does not change for each user, and identifies the user through the unique session ID.
  • the unique session ID is stored in the persistent cookie that does not change by creating a unique session ID if the user does not check whether there is an existing unique session ID in the HTTP header (cookie) when the service request is made, and then stores it in the hard disk of the web client PC. Since the unique session ID given in the subsequent invocation does not change and is requested in the HTTP header, it is possible to distinguish whether or not it is the same user.
  • FIG. 10 is a diagram illustrating an example of a case of user identification according to an embodiment of the present invention.
  • the web application server 40 or the web server 30 may not be able to identify the user A.
  • the session ID in the HTTP header may be determined by the web application server 40 or the like. It is possible to identify in the web server (30).
  • FIG. 11 is a diagram illustrating an example of a process of assigning a unique session ID according to an embodiment of the present invention.
  • the unique session ID management module 510 or 710 first determines whether the unique session ID is included in the transaction and if the unique session ID is not included. Generate unique session ID and add it to cookie to apply to response header. When creating a cookie, set SetMaxAge to a very large value and generate it as a unique session ID in the web client. For example, when the session ID duration is set by setMaxAge 2144448000, it may be maintained for 60 years.
  • the generated unique session ID is transmitted to the web client, and the web client stores the unique session ID in the web client memory and the hard disk.
  • the unique session ID is maintained regardless of the login, and the web application server 40 or the web server 30 may identify the user by collecting the unique session ID from the transaction information requested by the user.
  • the unique session ID is maintained on the hard disk 81 even when the web client 80 is terminated or restarted.
  • the unique session ID of the hard disk is restored from the web client memory 82 when the web client is executed.
  • the unique session ID holding time set in the unique thin line ID may be reset when the web client is executed again.
  • FIG. 9 is a diagram illustrating an example of a method of collecting user IDs according to an embodiment of the present invention.
  • the user ID information collecting module 505 or 705 sets a method name # 1 for extracting only at login by setting parameter names for the user ID and a method for accessing the user ID to load the method into memory.
  • User ID can be extracted through Method # 2, which extracts the user ID from the call parameter or return value when executing the method by injecting the code for time information extraction.
  • the management server 53 receives transaction information collected from the WAS plug-in agent 50 or the WEB plug-in agent 70, and analyzes whether it is normal transaction information or abnormal transaction information. In addition, the detection information is generated according to the analysis result, and a block command for an abnormal transaction is transmitted to the WAS plug-in agent 50 or the WEB plug-in agent 70 according to the security setting.
  • the management server 53 analyzes various transaction information collected by the WAS plug-in agent 50 or the WEB plug-in agent 70, and when abnormal transaction information is detected, sends a blocking command to the abnormal transaction of the WAS plug-in agent 50.
  • the abnormal transaction management module 520 or 720 may transmit the abnormal transaction management module 720 of the management module 520 or the WEB plug-in agent 70 to automatically block the unique session ID.
  • a blocking command is transmitted to the abnormal transaction management module 520 or 720 so that the WAS plug-in agent 50 or the WEB plug-in agent 70 Manual shutoff can be performed.
  • Blocking period can be set through functions such as permanent block and time setting block when manual block by automatic and security manager based on unique session ID.
  • the corresponding web client when an abnormal transaction occurs, the corresponding web client may be blocked.
  • management server 53 may transmit the detection SMS to the terminal of the security manager using the SMS sending system 55 when abnormal transaction information is detected. Security administrators will be able to receive detection SMS and take immediate action.
  • FIG. 13 is a block diagram showing a detailed configuration of the management server 53 according to an embodiment of the present invention.
  • the management server 53 may include a detection module 531, an analysis module 532, a blocking control module 533, and a communication module 534.
  • the detection module 531 may include a session ID based detection module 5311, an HTTP header information based detection module 5313, a DB access information based detection module 5315, and a statistical data based detection module 5317.
  • the session ID based detection module 5311 identifies a user through user identification based on a user session ID and a unique session ID, and detects abnormality of transaction information.
  • the DDOS attack or the session ID is not maintained in the transaction information when the transaction information is re-requested. It can be detected as a web crawler.
  • the session ID based detection module 5311 may detect abnormal transaction information through mapping of the unique session ID and the user ID.
  • FIG. 14 is a view illustrating a unique session ID and user ID mapping detection according to an embodiment of the present invention.
  • the unique session ID that does not change is maintained for each terminal even if the user is changed, and abnormal connection detection is possible by mapping with the user ID.
  • T1 to T3 T6 to T7 from terminal # 1, from T8 to T10 from terminal # 2, and from T11 to T12 from terminal # 3. That is, it can be seen that User 1 is connected from terminal # 1, terminal # 2, and terminal # 3. It can be seen that User 2 only accesses terminal # 1 from T4 to T5. T1 to T7 can see that User 1 and User 2 are connected to terminal # 1. That is, two users connected to the same terminal. In case of randomly passing through the Proxy Server, the Remote IP collected from the web application server is changed as the Proxy IP is collected.
  • the session ID based detection module 5311 may detect that the unique session ID does not change and the web hack via the proxy if the Remote IP is continuously changed. That is, the session ID based detection module 5311 detects that multiple users access the same terminal through matching of unique session ID and user ID, detects that the same user accesses from multiple terminals, and detects Proxy in one terminal. It is possible to detect attack by way of tampering, and to detect attack by tampering with IP at one terminal. If multiple user access is detected at the same terminal, web hacking defense can be performed at the session level, and the same user can If the terminal detects a connection, the same terminal can defend against an ID tampering attack. In addition, when one terminal detects an attack via a proxy, a web hacking defense via the proxy may be performed.
  • the HTTP header information based detection module 5313 may detect an abnormal transaction by detecting a call transaction that is not a normal web client. In general, when an external attack is performed, an abnormal request using a program occurs instead of a call through a general request browser. Therefore, when a browser other than the request browser is detected, the HTTP header information based detection module 5313 may detect the abnormal transaction.
  • the HTTP header information-based detection module 5313 may detect an abnormal transaction by identifying a search engine or a DDOS attack, identifying a transaction called by a method that is not allowed, and identifying a call parameter pattern analysis.
  • 15 to 17 illustrate examples of performing detection based on HTTP header information according to an embodiment of the present invention.
  • the HTTP header information-based detection module 5313 may include a web client type and version information of a User-Agent item in an HTTP header, and may detect an abnormal transaction through a specific string or black list mapping.
  • the HTTP header information-based detection module 5313 generally uses only GET and POST among HTTP methods, and other methods need to be blocked. Methods such as CONNECT and TRACE are used for bypass attacks, and when such methods are requested, they can be detected as abnormal web clients.
  • the HTTP header information-based detection module 5313 requests a request via a proxy server to hide its IP during a web hacking attack in the session phase.
  • the "Proxy-Connection" string is included in the HTTP header. Is detected, or if there is a string that can identify the proxy server in the User-Agent value.
  • the HTTP header information based detection module 5313 may detect an abnormal transaction, that is, an abnormal web client, by using call parameter mapping. For example, you can detect this by setting a detection pattern on the call parameters (Query String) requested by the GET and POST methods.
  • the HTTP header information based detection module 5313 may detect an abnormal web client when a script is included in a call parameter. If the script is included in the data input from the user, the script can be executed in the web client and the information can be hacked by obtaining cookie values, document object model (DOM) access, clipboard access, and key logging. Accordingly, the HTTP header information-based detection module 5313 detects abnormality when abnormal data such as a script exists by checking data input by the user.
  • DOM document object model
  • the HTTP header information based detection module 5313 may perform PCRE detection on the HTTP header information by generating a regular expression for abnormal transaction detection.
  • the DB access information based detection module 5315 detects a mass data query using the DB access information collected by the DB access information collecting module 507 of the WEB plug-in agent 50, or performs an SQL query. And abnormal transactions may be detected by detecting a Perl Compatible Regular Expressions (PCRE) pattern for a bind variable.
  • PCE Perl Compatible Regular Expressions
  • the statistical data-based detection module 5317 uses the same unique session ID-based user identification to detect excessive call by user, specific URI repetitive call detection by user, and ranking increase based on call ranking by URI. Detection, abnormal URI call flow can be detected.
  • the analysis module 532 may include a session ID based statistical analysis module 5321, an HTTP header information based statistical analysis module 5323, and a URI performance information based statistical analysis module 5325.
  • the session ID based statistical analysis module 5321 may provide transaction analysis continuity through the unique session ID, accurate hourly and daily visit number calculation, transaction distribution by unique session ID, and statistical analysis.
  • user call statistics can be analyzed, user URI call flow analysis can be performed, and continuous transaction distribution analysis can be performed. That is, in case of using the conventional session ID, when the web browser is closed or the PC is shut down, the session ID is newly generated and thus the session-based statistical analysis is not possible.
  • the present invention has the advantage of performing a variety of statistical analysis by using a unique session ID that does not change for each user ID.
  • the HTTP header information-based statistical analysis module 5323 may perform statistical analysis for each calling client, statistical analysis for each request method, and regional statistical analysis based on HTTP header information (User-Agent information, HTTP Method, Remote IP, etc.). have.
  • the URI performance information based statistical analysis module 5325 analyzes various statistical indicators for each user (using unique session ID, user ID, user session ID, etc.), domain-specific statistical indicators, and statistical information for each URI using URI performance information.
  • the blocking control module 533 may include a blocking policy management module 5331 and a blocking policy control module 5333.
  • the blocking policy management module 5331 performs blacklist management, blocking method management, blocking session ID management, blocking user ID management, and blocking user IP management.
  • the blocking policy control module 5333 controls blocking policies such as permanent blocking control, time setting blocking control, automatic blocking control, and manual blocking control.
  • the blocking control module 533 transmits a blocking policy to the WAS plug-in agent 50 through the communication module.
  • the blocking control module 533 sends a blocking command to the WAS plug-in agent 50 or the WEB plug-in agent through the communication module 534. 70 can be sent.
  • the blocking status may be received through the WAS plug-in agent 50 or the WEB plug-in agent 70.
  • the conventional security control system only limited information can be analyzed by collecting transaction information in the SSL / TSL encryption section, and there is a limit in analyzing statistical information because packet flow cannot be analyzed.
  • various types of decrypted information in the web application server memory can be collected, various types of statistical analysis can be performed.
  • the invention is also computer readable It may be embodied as computer readable code on a recording medium.
  • Computer-readable recording media include all types of recording devices that store data that can be read by a computer system.
  • Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like, which are also implemented in the form of carrier waves (eg, transmission over the Internet). It also includes.
  • the computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
  • functional programs, codes and code segments for implementing the present invention can be easily inferred by programmers in the art to which the present invention belongs.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명의 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치는 웹 애플리케이션 서버에 설치된 WAS 플러그인 에이전트 또는 웹 서버에 설치된 WEB 플러그인 에이전트로부터 트랜잭션 정보를 수신하고, 정상적인 트랜잭션 정보인지 또는 비정상적인 트랜잭션 정보인지를 분석하고, 분석결과에 따라 탐지정보를 생성하며, 상기 비정상 트랜잭션에 대한 차단명령을 상기 WAS 플러그인 에이전트로 전송하는 관리서버를 포함할 수 있다. 본 발명에 따르면, 복호화된 트랜잭션 정보의 분석을 통해 SSL/TSL로 암호화된 공격에 대한 탐지가 가능하며, 정상 로그인 후 세션 단계의 웹 해킹 공격 대응이 가능하다. 또한, 본 발명에 따르면, 웹 애플리케이션 서버 또는 웹 서버의 메모리내의 복호화된 각종 정보를 수집할 수 있으므로, 다양한 형태의 통계 분석을 수행할 수 있는 이점이 있다.

Description

웹 에플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치
본 발명의 실시예들은 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치에 관한 것으로서, 더욱 상세하게는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용하여 논리적인 보안관제를 수행할 수 있는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치에 관한 것이다.
기존 보안 관제 체계(IDS, IPS, ESM, FW, WAF 등)은 TCP/IP 패킷(Packet)을 스니핑(sniffing)하여 L4 혹은 L7 레이어까지 패킷을 파싱하여 침입탑지 차단등의 보안을 수행한다. 그러나 상기와 같은 방식은 패킷에 의존적이기 때문에, SSL/TSL로 암호화된 공격에 대한 탐지가 불가능하고, 정상 로그인 후 세션 단계의 웹 해킹 공격에 대한 대응이 불가능한 문제점이 있다.
도 1에서 볼 수 있는 바와 같이, 기존의 침입 방지 시스템(Intrusion Prevention System, IPS) 및 침입 탐지 시스템(Intrusion Detection System, IDS)은 네트워크로 전송되는 패킷의 내용(헤더 + 데이터)을 분석하여 탐지 및 방어를 수행하는 물리적인 보안관제 방법이었다. 그러나, 보안을 위해 SSL/TSL을 지원하는 프로토콜에서는 SSL/TSL이 암호화된 구간에서 기능하므로, i)SSL/TSL로 암호화된 공격에 대한 탐지 불가 분석 불가, ii)패킷 팔로우(Follow) 분석 불가, iii)정상 인증 후의 공격 대응 불가 iv)암호화로 인한 비정상 트랜잭션 식별의 한계 등의 문제가 있었다.
상기한 바와 같은 종래기술의 문제점을 해결하기 위해, 본 발명에서는 SSL/TSL로 암호화된 공격에 대한 탐지가 가능하고, 정상 인증 후 세션 단계의 웹 해킹 공격에 대응 가능한 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치를 제안하고자 한다.
본 발명의 다른 목적들은 하기의 실시예를 통해 당업자에 의해 도출될 수 있을 것이다.
상기한 목적을 달성하기 위해 본 발명의 바람직한 일 실시예에 따르면, 웹 애플리케이션 서버에 설치된 WAS 플러그인 에이전트 또는 웹 서버에 설치된 WEB 플러그인 에이전트로부터 트랜잭션 정보를 수신하고, 정상적인 트랜잭션 정보인지 또는 비정상적인 트랜잭션 정보인지를 분석하고, 분석결과에 따라 탐지정보를 생성하며, 상기 비정상 트랜잭션에 대한 차단명령을 상기 WAS 플러그인 에이전트로 전송하는 관리서버를 포함하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치가 제공될 수 있다.
상기 WAS 플러그인 에이전트는 상기 웹 애플리케이션 서버에 플러그인 방식으로 설치되어 동작하며, 상기 웹 서버 또는 웹 애플리케이션 서버에서 복호화된 사용자의 트랜잭션 정보를 상기 웹 애플리케이션 서버의 메모리에서 수집하며, 상기 WEB 플러그인 에이전트는 상기 웹 서버에 플러그인 방식으로 설치되어 동작하며, 상기 웹 서버에서 복호화된 사용자의 트랜잭션 정보를 상기 웹 서버의 메모리에서 수집할 수 있다.
상기 WAS 플러그인 에이전트는 사용자의 웹 애플리케이션 서버로의 서비스 요청 시, 영구 쿠키에 변하지 않는 고유세션 ID가 있는지 탐색하고, 고유세션 ID가 없는 경우, 상기 사용자에 대한 고유 세션 ID를 생성하여 사용자의 웹 클라이언트로 전송하며, 생성된 고유세션 ID를 영구 쿠키에 설정하여 이후 서비스 요청시 고유세션 ID로 사용자를 구분할 수 있도록 하는 고유세션 ID 관리모듈을 포함할 수 있다.
상기 WAS 플러그인 에이전트는 상기 트랜잭션 정보에 포함된 HTTP 헤더를 분석하여 HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referer, Accept-Encoding, Accept-Language, Cookie, 기타 Header 정보, Attribute 정보등을 수집하는 HTTP 헤더 정보 수집모듈; 상기 트랜잭션 정보로부터 사용자 세션 ID, 상기 고유세션 ID를 수집하는 웹 세션 ID 수집 모듈; 상기 트랜잭션 정보 및 트랜잭션 처리시에 포함된 사용자 ID 정보를 수집하는 사용자 ID 정보 수집모듈; 상기 트랜잭션 정보에 포함된 DB 엑세스 정보로부터 SQL 수행건수, SQL Bind 변수, Select 건수, Insert 건수, Update 건수, Delete 건수 및 커넥션풀 사용량, 커넥션풀 미반환 정보들을 수집하는 DB 엑세스 정보 수집모듈; 상기 웹 애플리케이션 서버의 호스트네임, 웹 애플리케이션 서버 컨테이너명 및 인스턴트 명, 서비스 포트, OS 및 웹 애플리케이션 리소스 사용량 등의 정보를 수집하는 웹 애플리케이션 서버 정보 수집모듈; 상기 트랜잭션 정보에 포함된 URI(Uniform Resource Identifier) 트랜잭션 정보 도메인 및 접속포트 정보, 접속 URI, 호출시간, 전체 응답시간, 구간별 응답시간, CPU 리소스 사용량, 처리 결과, AP 오류 및 Query String 정보를 수집하는 URI 정보 수집모듈; 중 적어도 하나의 수집모듈을 포함하는 정보수집모듈을 포함할 수 있다.
상기 WEB 플러그인 에이전트는 사용자의 웹 서버로의 서비스 요청 시, 영구 쿠키에 변하지 않는 고유세션 ID가 있는지 탐색하고, 고유세션 ID가 없는 경우, 상기 사용자에 대한 고유 세션 ID를 생성하여 사용자의 웹 클라이언트로 전송하며, 생성된 고유세션 ID를 영구 쿠키에 설정하여 이후 서비스 요청 시 고유세션 ID로 사용자를 구분할 수 있도록 하는 고유세션 ID 관리모듈을 더 포함할 수 있다.
상기 WEB 플러그인 에이전트는 상기 트랜잭션 정보에 포함된 HTTP 헤더를 분석하여 HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referer, Accept-Encoding, Accept-Language, Cookie, 기타 Header 정보, Attribute 정보 중 적어도 하나의 정보를 수집하는 HTTP 헤더 정보 수집모듈; 상기 트랜잭션 정보로부터 사용자 세션 ID, 상기 고유세션 ID를 수집하는 웹 세션 ID 수집 모듈; 상기 트랜잭션 정보 및 트랜잭션 처리시에 포함된 사용자 ID 정보를 수집하는 사용자 ID 정보 수집모듈; 상기 웹 서버의 호스트네임, 웹 서버 컨테이너명 및 인스턴트 명, 서비스 포트, OS 및 웹 서버 리소스 사용량 등의 정보를 수집하는 웹 서버 정보 수집모듈; 및 상기 트랜잭션 정보에 포함된 URI(Uniform Resource Identifier) 트랜잭션 정보 도메인 및 접속포트 정보, 접속 URI, 호출시간, 전체 응답시간, 구간별 응답시간, CPU 리소스 사용량, 처리 결과, AP 오류 및 Query String 정보를 수집하는 URI 정보 수집모듈; 중 적어도 하나의 수집모듈을 포함하는 정보수집모듈을 포함할 수 있다.
상기 관리 서버는, 최초 트랜잭션 정보가 요청된 후 상기 사용자 세션 ID 및 상기 고유세션 ID가 생성된 이후 트랜잭션 정보가 재 요청될 시, 상기 트랜잭션 정보에 상기 사용자 세션 ID 및 고유세션 ID가 유지되지 않는 경우 DDOS 공격 또는 웹 크롤러인 것으로 탐지하는 제1 탐지, 상기 트랜잭션 정보가 재 요청될 시 상기 사용자 세션 ID만 유지되고, 상기 고유세션 ID가 유지되지 않는 경우 사용자의 웹 클라이언트가 해킹용 프로그램을 통해 동작되는 것으로 탐지하는 제2 탐지, 상기 고유 세션 ID와 상기 사용자 ID의 매핑을 통한 제3 탐지 중 적어도 하나의 탐지를 수행하는 세션 ID 기반 탐지 모듈을 포함할 수 있다.
상기 세션 ID 기반 탐지 모듈은 상기 고유세션 ID와 사용자 ID의 매핑을 통해 동일 단말기에서 다수 사용자가 접속하는 것을 탐지, 동일 사용자가 여러 개의 단말기에서 접속하는 것을 탐지, 하나의 단말기에서 Proxy를 경유하여 공격하는 것을 탐지 또는 하나의 단말기에서 IP를 변조하여 공격하는 것을 탐지할 수 있다.
상기 관리 서버는 웹 클라이언트의 종류 및 버전 정보가 담겨있는 상기 User-agent 정보를 식별하여, 상기 User-agent에 특정 문자열 존재 유무 또는 블랙 리스트 매핑을 통해 비정상 트랜잭션으로 탐지하는 제1 탐지; 상기 HTTP Method 중 허용되지 않는 Method가 포함된 경우 비정상 트랜잭션으로 탐지하는 제2 탐지; 상기 HTTP 헤더에 Proxy-connection 문자열이 존재 또는 상기 User-agent에 Proxy 서버를 식별할 수 있는 문자열이 존재하는 경우 비정상 트랜잭션으로 탐지하는 제3 탐지; 및 상기 HTTP 헤더 정보에 대한 PCRE 탐지를 수행하는 제 4 탐지 중 적어도 하나의 탐지를 포함하는 HTTP 헤더 정보 기반 탐지모듈을 포함할 수 있다.
상기 관리 서버는, 상기 고유세션 ID를 통한 트랜잭션 분석 연속성 제공, 정확한 시간 별, 일별 방문자수 산정, 고유세션 ID 별 트랜잭션 분포도 및 통계 분석을 수행하는 세션 ID 기반 통계 분석모듈; 상기 HTTP 헤더 정보를 이용한 호출 브라우저 별 통계 분석을 수행하는 HTTP 헤더 정보 기반 통계 분석모듈; 및 상기 URI 성능정보를 이용한 상기 도메인 별 각종 통계지표 및 상기 URI 별 통계정보를 분석하는 URI 성능정보 기반 통계 분석모듈을 포함할 수 있다.
상기 관리 서버는, User-Agent 블랙리스트 관리, 차단 Method 관리, 차단 세션 ID 관리, 차단 사용자 ID 관리, 차단 사용자 IP 관리 등에 대한 차단 정책을 관리 하는 차단 정책 관리모듈; 영구 차단 제어, 시간 설정 차단 제어, 자동 차단 제어, 수동 차단 제어등의 차단 정책을 제어하는 차단 정책 제어모듈;을 포함하는 차단제어모듈을 더 포함하며, 상기 차단제어모듈은 통신 모듈을 통해 상기 WAS 플러그인 에이전트로 차단 정책을 송신하며, 비정상 트랜잭션이 탐지되는 경우 차단 명령을 상기 WAS 플러그인 에이전트로 전송할 수 있다.
상기 WAS 플러그인 에이전트 또는 상기 WEB 플러그인 에이전트는 상기 차단제어모듈로부터 차단 명령를 수신하는 경우 차단 명령에 해당하는 트랜잭션에 대한 차단 기능을 수행하는 비정상 트랜잭션 관리모듈을 더 포함할 수 있다.
상기 관리 서버는, 상기 DB 엑세스 정보를 이용하여 대량 데이터 조회를 감지하거나, SQL 쿼리 및 바인드 변수에 대한 PCRE(Perl Compatible Regular Expressions) 패턴을 탐지하여 비정상 트랜잭션을 탐지하는 DB 엑세스 정보 기반 탐지모듈; 및 동일 고유세션 ID 기반의 사용자 식별을 통해, 사용자별 과다 호출 탐지, 사용자별 특정 URI 반복 호출 탐지, URI 별 호출 랭킹 기반의 랭킹 급상승 탐지, 비정상 URI 호출 Flow를 탐지하는 통계 데이터 기반 탐지모듈을 포함할 수 있다.
상기 관리 서버는, 동일 고유세션 ID 기반의 사용자 식별을 통해, 사용자별 과다 호출 탐지, 사용자별 특정 URI 반복 호출 탐지, URI 별 호출 랭킹 기반의 랭킹 급상승 탐지, 비정상 URI 호출 Flow를 탐지하는 통계 데이터 기반 탐지모듈을 포함할 수 있다.
본 발명에 따르면, 복호화된 트랜잭션 정보의 분석을 통해 SSL/TSL로 암호화된 공격에 대한 탐지가 가능하며, 정상 로그인 후 세션 단계의 웹 해킹 공격 대응이 가능하다.
또한, 본 발명에 따르면, 웹 애플리케이션 서버 또는 웹 서버의 메모리내의 복호화된 각종 정보를 수집할 수 있으므로, 다양한 형태의 통계 분석을 수행할 수 있는 이점이 있다.
도 1은 종래의 보안관제 시스템의 일례를 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 보안관제 시스템의 일례를 도시한 도면이다.
도 3 및 도 4은 발명의 일 실시예에 따른 보안장치를 포함하는 보안관제 시스템의 일례를 도시한 도면이다.
도 5 및 도 6은 발명의 일 실시예에 따른 보안장치를 포함하는 보안관제 시스템의 일례를 도시한 도면이다.
도 7는 본 발명의 일실시예에 따른 WAS 플러그인 에이전트의 상세한 구성을 도시한 블록도이다.
도 8는 본 발명의 일실시예에 따른 WEB 플러그인 에이전트의 상세한 구성을 도시한 블록도이다.
도 9는 본 발명의 일 실시예에 따른 사용자 세션 ID를 관리하는 방법의 일례를 도시한 도면이다.
도 10은 본 발명의 일 실시예에 따른 사용자 식별을 하는 경우의 일례를 설명하기 위해 도시된 도면이다.
도 11은 본 발명의 일 실시예에 따른 고유세션 ID를 부여하는 과정의 일례를 도시한 도면이다.
도 12는 본 발명의 일 실시예에 따른 사용자 ID를 수집하는 방법의 일례를 도시한 도면이다.
도 13은 본 발명의 일 실시예에 따른 관리 서버의 상세한 구성을 도시한 블록도이다.
도 14는 본 발명의 일 실시예에 따른 고유세션 ID와 사용자 ID 매핑 탐지를 설명하기 위해 도시한 도면이다.
도 15 내지 도 17은 본 발명의 일 실시예에 따른 HTTP 헤더 정보 기반으로 탐지를 수행하는 일례를 도시한 도면이다.
도 18은 본 발명의 일 실시예에 따른 고유세션 ID 기반의 사용자 식별을 이용한 통계 데이터 기반 탐지 방법의 일례를 도시한 도면이다.
본 발명의 바람직한 일 실시예에 따르면, 웹 애플리케이션 서버에 설치된 WAS 플러그인 에이전트 또는 웹 서버에 설치된 WEB 플러그인 에이전트로부터 트랜잭션 정보를 수신하고, 정상적인 트랜잭션 정보인지 또는 비정상적인 트랜잭션 정보인지를 분석하고, 분석결과에 따라 탐지정보를 생성하며, 상기 비정상 트랜잭션에 대한 차단명령을 상기 WAS 플러그인 에이전트로 전송하는 관리서버를 포함하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치가 제공될 수 있다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 이하의 설명에서 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라 그 중간에 다른 소자를 사이에 두고 전기적으로 연결되어 있는 경우도 포함한다. 또한, 도면에서 본 발명과 관계없는 부분은 본 발명의 설명을 명확하게 하기 위하여 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 동일한 도면 부호를 붙였다.
이하, 첨부된 도면들을 참고하여 본 발명에 대해 설명하도록 한다.
도 2는 본 발명의 일 실시예에 따른 보안관제 시스템의 일례를 도시한 도면이다
기존 보안 관제 체계 IPS/IDS(10), WAF(20)는 TCP/IP 패킷(Packet)을 스니핑(sniffing)하여 L4 혹은 L7 레이어까지 패킷을 파싱하여 침입탑지 차단등의 보안을 수행한다. 그러나 상기와 같은 방식은 패킷에 의존적이기 때문에, SSL/TSL로 암호화된 공격에 대한 탐지가 불가능하고, 정상 로그인 후 세션 단계의 웹 해킹 공격에 대한 대응이 불가능한 문제점이 있다. 또한 패킷 Follow 분석이 불가능하며, 비정상 트랜잭션 식별의 한계가 있다.
따라서, 본 발명은 웹 서버(30) 또는 웹 애플리케이션 서버(40)에서 복호화된 SSL/TSL로 요청된 사용자의 트랜잭션 정보를 웹 애플리케이션 서버(40)에 설치된 WAS 플러그인 에이전트(50) 또는 웹 서버(30)에 설치된 WEB 플러그인 에이전트(51)에서 수집하고, 상기 수집된 트랜잭션 정보를 이용하여 침입탐지 및 차단, 트랜잭션 정보의 통계 분석을 수행함으로써, 암호화된 트랜잭션 데이터에 의한 IPS/IDS(10)의 한계를 극복하는 것을 특징으로 한다.
본 발명에 따르면, 암호화된 SSL/TSL 트랜잭션 정보의 분석이 가능하며, 패킷 Follow 분석이 가능해진다. 또한, 웹 서버(30) 또는 웹 애플리케이션 서버(40)에서의 정상 인증 후의 공격에 대한 대응이 가능하며, 비정상 트랜잭션의 식별이 가능해진다. 또한, WAS 플러그인 에이전트(50) 또는 WEB 플러그인 에이전트(70)에서 수집되는 복호화된 다양한 형태의 트랜잭션 정보를 통해 세션 레벨의 탐지가 가능하며 트랜잭션 통계 기반의 탐지가 가능하다.
도 3 및 도 4은 발명의 일 실시예에 따른 보안장치를 포함하는 보안관제 시스템의 일례를 도시한 도면이다.
도 3 및 도 4를 참조하면, 본 발명의 일 실시예에 따른 보안 장치는 WAS 플러그인 에이전트(50-1~50-n, 이하 50) 및 관리 서버(53)를 포함할 수 있다.
WAS 플러그인 에이전트(50)는 웹 애플리케이션 서버(40-1~40-n, 이하 40)에 설치되어 동작하고, 웹 애플리케이션 서버(40)의 메모리로부터 실시간으로 웹 서버(30) 또는 웹 애플리케이션 서버(40)에서 복호화된 SSL/TSL로 요청된 사용자의 트랜잭션 정보를 수집한다. 웹 서버(30)로 전송된 SSL/TSL로 암호화된 요청은 사용자가 웹 서버(30) 또는 웹 애플리케이션 서버(40)에서의 인증서등을 통한 인증 통과를 통해 복호화될 수 있다.
여기서, WAS 플러그인 에이전트(50)에서 수집되는 트랜잭션 정보는 패킷에 포함된 HTTP 헤더 정보, URI(Uniform Resource Identifie) 트랜잭션 정보, 데이터베이스의 엑세스 정보, 웹 에플리케이션 서버 정보 중 적어도 하나를 포함할 수 있다.
도 5 및 도 6은 발명의 다른 실시예에 따른 보안장치를 포함하는 보안관제 시스템의 일례를 도시한 도면이다.
도 5 및 도 6을 참조하면, 본 발명의 일 실시예에 따른 보안 장치는 WEB 플러그인 에이전트(70-1~70-n, 이하 70) 및 관리 서버(53)를 포함할 수 있다.
WEB 플러그인 에이전트(70)는 웹 서버(30-1~30-n, 이하 30)에 설치되어 동작하고, 웹 서버(30)의 메모리로부터 실시간으로 웹 서버(30) 에서 복호화된 SSL/TSL로 요청된 사용자의 트랜잭션 정보를 수집한다. 웹 서버(30)로 전송된 SSL/TSL로 암호화된 요청은 사용자가 웹 서버(30)에서의 인증서등을 통한 인증 통과를 통해 복호화될 수 있다.
여기서, WEB 플러그인 에이전트(70)에서 수집되는 트랜잭션 정보는 패킷에 포함된 HTTP 헤더 정보, URI(Uniform Resource Identifie) 트랜잭션 정보, 웹 애플리케이션 서버 정보 중 적어도 하나를 포함할 수 있다.
도 7은 본 발명의 일실시예에 따른 WAS 플러그인 에이전트의 상세한 구성을 도시한 블록도이다.
도 7을 참조하면, WAS 플러그인 에이전트(50)는 정보 수집모듈(500), 고유 세선 ID 관리모듈(510), 비정상 트랜잭션 관리모듈(520) 및 통신모듈(530)을 포함할 수 있다.
여기서, 정보 수집 모듈(500)은 HTTP 헤더 정보 수집모듈(501), 웹 세션 ID 수집모듈(503), 사용자 ID 정보 수집모듈(505), DB 엑세스 정보 수집모듈(507), 웹 애플리케이션 서버 정보 수집모듈(509), URI 정보 수집모듈(511), 을 포함할 수 있다.
HTTP 헤더 정보 수집모듈(501)은 HTTP 헤더를 분석하여 HTTP 헤더에 포함된 정보를 수집한다.
일례로, HTTP 헤더 정보에서 HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referer, Accept-Encoding, Accetpt-Language, Cookie, 기타 Header 정보, Attribute 정보 등을 수집할 수 있다.
웹 세션 ID 수집모듈(503)은 사용자의 웹 세션 ID, 변하지 않는 고유세션 ID를 수집한다.
사용자 ID 정보 수집모듈(505)는 트랜잭션 정보에 포함된 사용자 ID 정보를 수집한다.
고유세션 ID 관리 모듈(510)이 사용자 별로 변하지 않는 고유세션 ID를 부여하고, 고유세션 ID를 통해 사용자를 식별한다.
DB 엑세스 정보 수집모듈(507)는 WAS 플러그인 에이전트에서 DB Access시 DB 접속정보, DB 커넥션풀 사용량, SQL 수행건수, SQL Bind 변수, DML(data manipulation language) 정보 수집을 통한 Select 건수, Insert 건수, Update 건수, Delete 건수 및 커넥션풀 사용량, 커넥션풀 미반환 정보들을 포함하는 상기 데이터베이스의 엑세스 정보를 수집한다.
웹 애플리케이션 서버 정보 수집모듈(509)은 웹 애플리케이션 서버(40)의 호스트네임, 웹 애플리케이션 서버 컨테이너명 및 인스턴트 명, 서비스 포트, OS 및 웹 애플리케이션 리소스 사용량 등의 정보를 수집한다.
URI 성능정보 수집모듈(511)은 도메인 및 접속포트 정보, 접속 URI 호출시간, 전체 응답시간, 구간별 응답시간, CPU 리소스 사용량, 처리 결과, AP 오류 및 Query String 정보를 포함하는 URI 트랜잭션 정보를 수집한다.
비정상 트랜잭션 관리 모듈(520)은 차단 정책 관리, 관리서버(50)로부터의 요청에 따른 비정상 트랜잭션 차단, 차단 현황 관리등의 기능을 수행한다.
통신 모듈(530)은 WAS 플러그인 에이전트(50)와 관리서버(53)간의 양방향 통신 모듈로서, WAS 플러그인 에이전트(50)에서 수집한 정보 및 비정상트랜잭션 관리 정책등에 대한 상호 통신 기능을 수행한다.
도 8은 본 발명의 일실시예에 따른 WEB 플러그인 에이전트의 상세한 구성을 도시한 블록도이다.
도 8을 참조하면, WEB 플러그인 에이전트(70)는 정보 수집모듈(700), 고유 세선 ID 관리모듈(710), 비정상 트랜잭션 관리모듈(720) 및 통신모듈(730)을 포함할 수 있다.
여기서, 정보 수집 모듈(700)은 HTTP 헤더 정보 수집모듈(701), 웹 세션 ID 수집모듈(703), 사용자 ID 정보 수집모듈(705), 웹 서버 정보 수집모듈(709), URI 정보 수집모듈(711), 을 포함할 수 있다.
HTTP 헤더 정보 수집모듈(701)은 HTTP 헤더를 분석하여 HTTP 헤더에 포함된 정보를 수집한다.
일례로, HTTP 헤더 정보에서 HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referrer, Accept-Encoding, Accept-Language, Cookie, 기타 Header 정보, Attribute 정보 등을 수집할 수 있다.
웹 세션 ID 수집모듈(703)은 사용자의 웹 세션 ID, 변하지 않는 고유세션 ID를 수집한다.
사용자 ID 정보 수집모듈(705)는 트랜잭션 정보에 포함된 사용자 ID 정보를 수집한다.
웹 서버 정보 수집모듈(709)은 웹 서버(30)의 호스트네임, 웹 서버 컨테이너명 및 인스턴트 명, 서비스 포트, OS 및 웹 서버 리소스 사용량 등의 정보를 수집한다.
URI 성능정보 수집모듈(711)은 도메인 및 접속포트 정보, 접속 URI 호출시간, 전체 응답시간, 구간별 응답시간, CPU 리소스 사용량, 처리 결과, AP 오류 및 Query String 정보를 포함하는 URI 트랜잭션 정보를 수집한다.
고유세션 ID 관리 모듈(710)은 사용자 별로 변하지 않는 고유세션 ID를 부여하고, 고유세션 ID를 통해 사용자를 식별한다.
비정상 트랜잭션 관리 모듈(720)은 차단 정책 관리, 관리서버(50)로부터의 요청에 따른 비정상 트랜잭션 차단, 차단 현황 관리등의 기능을 수행한다.
통신 모듈(730)은 WEB 플러그인 에이전트(50)와 관리서버(53)간의 양방향 통신 모듈로서, WEB 플러그인 에이전트(50)에서 수집한 정보 및 비정상트랜잭션 관리 정책등에 대한 상호 통신 기능을 수행한다.
일반적으로 사용하는 HTTP 프로토콜은 TCP/IP 접속을 유지하지 않기 때문에 세션을 유지하기 위하여 여러 가지 방법이 사용된다. 가장 널리 쓰이는 방법은 보안을 고려하여 민감한 세션 정보는 서버(메모리/파일/DB 등)에 저장하고 해당 정보를 찾을 수 있는 키값(세션 ID) 쿠키(Cookie)를 이용하여 브라우저 저장하는 방법이다. 웹 애플리케이션 서버(40) 또는 웹 서버(30)는 브라우저에서 보내는 세션 ID를 이용하여 사용자(웹 클라이언트)를 구분하며, 로그인 후에 요청되는 URL에 대하여 세션 ID를 통하여 웹 애플리케이션 서버(40) 또는 웹 서버(30)에서 로그인 사용자를 식별하게 된다.
도 9를 참조하면, 사용자의 웹 클라이언트(80)는 하드 디스크(81) 또는 웹 클라이언트 메모리(82)를 포함할 수 있다. 사용자는 웹 클라이언트(80)를 통해 웹 애플리케이션 서버(40) 또는 웹 서버(30)로 최초 서비스 요청을 하면, 웹 애플리케이션 서버(40) 또는 웹 서버(30)는 사용자 세션 ID를 생성하여 Cookie에 추가를 통해 응답 헤더에 적용 및 WAS 세션 스토어에 저장할 수 있다. Cookie 생성시 setMaxAge설정을 통하여 웹 클라이언트에서의 세션 ID 유지시간을 설정할 수 있다. 세션 ID 유지 시간은 다음과 같은 케이스로 설정될 수 있다.
a. 미설정 또는 -1 : 웹 클라이언트 메모리에 저장
b. 숫자로 설정 : 해당 시간(초) 만큼 유지
c. 0 으로 설정: 해당 세션 ID 즉시 파기
웹 애플리케이션 서버(40) 또는 웹 서버(70)로부터 웹 클라이언트(80)로 사용자 세션 ID가 전송되면, 웹 클라이언트(80)는 사용자 세션 ID를 저장한다. 상기 a와 같이 세션 ID 유지 시간이 설정되는 경우 웹 클라이언트 메모리(82)에 저장되며, 상기 b와 같이 세션 ID 유지 시간이 설정되는 경우 웹 클라이언트(80) 메모리 및 하드디스크(81)에 저장될 수 있다.
웹 애플리케이션 서버(40) 또는 웹 서버(70)는 로그인 전에는 사용자 세션 ID를 이용하여 사용자(웹 클라이언트)를 구분하며, 로그인 후에는 사용자 세션 ID 및 로그인 정보를 이용하여 사용자를 구분한다. 사용자는 웹 애플리케이션 서버(40) 또는 웹 서버(70)를 통해 웹 서비스를 이용할 수 있으며, 상기 a와 같이 세션 ID 유지 시간이 설정된 경우 웹 클라이언트 종료 시 사용자 세션 ID가 파기가 된다. 상기 b와 같이 사용자 세션 ID 유지 시간이 설정된 경우 설정된 해당 시간이 지난 사용자 세션 ID에 대하여 웹 클라이언트 메모리(82), 하드 디스크(81)에서 사용자 세션 ID를 파기할 수 있다.
기존의 사용자 세션 ID와는 달리 본 발명에서는 WAS 플러그인 에이전트(50)의 고유세션 ID 관리모듈(510) 또는 WEB 플러그인 에이전트(70)의 고유세선 ID 관리모듈(710)에서 생성된 고유세션 ID를 생성하여 웹 클라이언트가 재기동되어 동일 세션 ID를 제공하여 사용자 식별이 가능하도록 한다.
기존의 사용자 세션 ID의 경우 브라우저를 닫거나, PC를 재 부팅하는 경우 웹 애플리케이션 서버(40) 또는 웹 서버(30)에 재 접속 시 세션 ID가 변경되게 된다.
따라서 동일한 사용자에 대한 통계분석에 어려움이 있었다. 또한, 트랜잭션 정보에 포함된 사용자 IP의 경우 특정 그룹에서 대표 IP를 공용으로 쓰는 경우 서로 다른 사용자의 트랜잭션 정보임에도 동일 사용자 IP가 포함될 수 있어, IP 기반으로 사용자에 대한 통계분석이 어려운 문제가 있었다.
따라서, 본 발명에서는 고유세션 ID 관리 모듈(510, 710)이 사용자 별로 변하지 않는 고유세션 ID를 부여하고, 고유세션 ID를 통해 사용자를 식별하게 된다. 여기서, 고유세션 ID는 사용자가 서비스 요청 시 HTTP 헤더(쿠키)에서 기존 부여된 고유세션 ID가 있는지 확인하여 없다면 고유세션 ID를 생성하여 변하지 않는 영구쿠키에 저장하여 이후 웹 클라이언트 PC의 하드 디스크에 저장되며, 이후 호출 시 부여된 고유세션 ID가 변하지 않고 HTTP 헤더에 담겨 요청되므로, 동일 사용자 인지 아닌지 구별할 수 있다.
도 10은 본 발명의 일 실시예에 따른 사용자 식별을 하는 경우의 일례를 설명하기 위해 도시된 도면이다.
도 10(a)를 참조하면, 웹 애플리케이션 서버(40) 또는 웹서버(30)에서는 네트워크를 거쳐 사용자의 트랜잭션이 요청되는 경우 사용자 A에 대한 IP 식별이 불가능할 수 있다. 하지만, 본 발명에서와 같이 변하지 않는 고유세션 ID로 사용자를 식별하는 경우 도 10(b)를 참조하면, 네트워크를 거쳐 트랜잭션이 요청되는 경우에도 HTTP 헤더에서의 세션 ID는 웹 애플리케이션 서버(40) 또는 웹서버(30)에서 식별이 가능하다.
도 11은 본 발명의 일 실시예에 따른 고유세션 ID를 부여하는 과정의 일례를 도시한 도면이다.
도 11을 참조하면, 웹 클라이언트(80)가 서비스 트랜잭션 요청 시, 고유세션 ID 관리 모듈(510, 710)은 우선 트랜잭션에 고유세션 ID가 포함되어 있는지를 판단하고, 고유세션 ID가 포함되어 있지 않다면 고유세션 ID를 생성하여 Cookie에 추가를 통해 응답 헤더에 적용한다. Cookie 생성 시 SetMaxAge를 매우 큰 값으로 설정하여 웹 클라이언트에서의 고유세션 ID로 생성한다. 일례로 setMaxAge(2144448000)으로 세션 ID 유지시간이 설정될 시 60년간 유지될 수 있다.
이후 생성된 고유세션 ID는 웹 클라이언트로 전송되며, 웹 클라이언트는 고유세션 ID를 웹 클라이언트 메모리 및 하드 디스크에 저장한다. 사용자가 사이트를 이용하는 경우 로그인과 무관하게 고유세션 ID는 유지되며, 웹 애플리케이션 서버(40) 또는 웹 서버(30)는 사용자에 의해 요청되는 트랜잭션 정보에서 고유세션 ID를 수집하여 사용자를 구분할 수 있다. 웹 클라이언트(80)가 종료 또는 재 기동시에도 고유세션 ID가 하드 디스크(81)에 유지되며, 웹 클라이언트 실행 시 하드 디스크의 고유세션 ID가 웹 클라이언트 메모리(82)에서 복원된다. 또한, 웹 클라이언트 재실행 시 고유 세선 ID에 설정된 고유세션 ID 유지시간은 재설정될 수 있다.
도 9는 본 발명의 일 실시예에 따른 사용자 ID를 수집하는 방법의 일례를 도시한 도면이다.
도 9를 참조하면, 사용자 ID 정보 수집 모듈(505, 705)은 사용자 ID에 대한 파라미터명을 설정하여 로그인시에만 추출하는 방법#1 및 사용자 ID를 Access하는 메소드를 설정하여 해당 메소드가 메모리에 로드시 정보추출을 위한 코드를 Injection하여 해당 메소드 수행 시 호출 파라미터나 리턴 값에서 사용자 ID를 추출하는 방법#2를 통해 사용자 ID를 추출할 수 있다.
다시, 도 4 및 도 6을 참조하면, 관리 서버(53)는 WAS 플러그인 에이전트(50) 또는 WEB 플러그인 에이전트(70)로부터 수집된 트랜잭션 정보를 수신하고, 정상적인 트랜잭션 정보인지 또는 비정상적인 트랜잭션 정보인지를 분석하고, 분석결과에 따라 탐지정보를 생성하며, 보안 설정에 따라 비정상 트랜잭션에 대한 차단 명령을 WAS 플러그인 에이전트(50) 또는 WEB 플러그인 에이전트(70)로 전송하는 기능을 수행한다.
즉, 관리 서버(53)는 WAS 플러그인 에이전트(50) 또는 WEB 플러그인 에이전트(70)에 수집된 각종 트랜잭션 정보를 분석하여 비정상 트랜잭션 정보가 감지되는 경우, 차단 명령을 WAS 플러그인 에이전트(50)의 비정상 트랜잭션 관리모듈(520) 또는 WEB 플러그인 에이전트(70)의 비정상 트랜잭션 관리모듈(720)로 전송하여 비정상 트랜잭션 관리모듈(520, 720)에서 해당 고유세션 ID에 대한 자동 차단을 기능을 수행할 수 있다.
보안 관리자를 통한 관리서버(53)에서 사용자 ID나 고유세션 ID를 선택하여 수동 차단 시에도 차단 명령이 비정상 트랜잭션 관리모듈(520,720)로 전송되어 WAS 플러그인 에이전트(50) 또는 WEB 플러그인 에이전트(70)에서 수동 차단 기능을 수행할 수 있다.
고유세션 ID 기반의 자동 및 보안 관리자에 의한 수동 차단 시 영구차단, 시간 설정 차단 등의 기능을 통하여 차단 기간을 설정할 수 있을 것이다.
즉, 본 발명에서는 비정상적인 트랜잭션이 발생하는 경우 해당되는 웹 클라이언트의 차단을 수행할 수 있다.
또한, 관리 서버(53)는 비정상 트랜잭션 정보가 감지되는 경우 SMS 발송 시스템(55)을 이용하여 보안 관리자의 단말기에 탐지 SMS를 전송할 수 있다. 보안 관리자는 탐지 SMS를 수신하여 즉각적인 조치를 취할 수 있을 것이다.
도 13은 본 발명의 일 실시예에 따른 관리 서버(53)의 상세한 구성을 도시한 블록도이다.
도 13을 참조하면, 관리 서버(53)는 탐지 모듈(531), 분석모듈(532), 차단제어모듈(533) 및 통신모듈(534)를 포함할 수 있다.
탐지 모듈(531)은 세션 ID 기반 탐지모듈(5311), HTTP 헤더 정보 기반 탐지 모듈(5313), DB 엑세스 정보 기반 탐지 모듈(5315), 통계 데이터 기반 탐지 모듈(5317)을 포함할 수 있다.
세션 ID 기반 탐지모듈(5311)은 사용자 세션 ID 및 고유세션 ID를 기반의 사용자 식별을 통하여 사용자를 식별하고, 트랜잭션 정보의 비정상 유무를 탐지한다.
일례로, 웹 클라이언트에서 최초 트랜잭션 정보가 요청된 후 사용자 세션 ID 및 고유세션 ID가 생성된 이후, 트랜잭션 정보가 재요청될 시 트랜잭션 정보에 사용자 세션 ID 및 고유세션 ID가 유지되지 않는 경우 DDOS 공격 또는 웹 크롤러인 것으로 탐지할 수 있다.
또한, 서비스가 재요청될 시 사용자 세션 ID 만 유지되고 고유세션 ID가 유지 되지 않는 경우 웹 클라이언트가 해킹용 프로그램을 통해 동작되는 것으로 탐지할 수 있다.
또한, 세션 ID 기반 탐지모듈(5311)은 고유세션 ID와 사용자 ID의 매핑을 통해 비정상 트랜잭션 정보를 탐지할 수 있다.
도 14은 본 발명의 일 실시예에 따른 고유세션 ID와 사용자 ID 매핑 탐지를 설명하기 위해 도시한 도면이다.
변하지 않는 고유세션 ID는 사용자가 변경되어도 단말기 별로 그대로 유지되어, 사용자 ID와 매핑하면 비정상 접속 탐지가 가능하다.
도 14를 참조하면, User 1은 T1~T3, T6~T7까지는 단말기#1에서, T8~T10은 단말기 #2에서, T11~T12 까지는 단말기#3에서 접속하였음을 알 수 있다. 즉, User 1은 단말기#1, 단말기#2, 단말기#3에서 접속하였음을 알 수 있다. User 2는 T4~T5까지 단말기#1에서만 접속하였음을 알 수 있다. T1~T7는 단말기#1에서 User 1과 User 2가 접속하였음을 알 수 있다. 즉, 동일 단말기에서 2명의 User가 접속하였다. Proxy Server를 랜덤으로 경유 시 웹 애플리케이션 서버에서 수집한 Remote IP는 Proxy 서버 IP가 수집되므로 Remote IP가 계속 바뀌게 된다.
따라서, 세션 ID 기반 탐지모듈(5311)은 변하지 않는 고유세션 ID는 그대로이고 Remote IP가 계속 변경되는 경우 Proxy를 경유한 웹 해킹임을 탐지할 수 있다. 즉, 세션 ID 기반 탐지모듈(5311)은 고유세션 ID와 사용자 ID의 매칭을 통해 동일 단말기에서 다수 사용자가 접속하는 것을 탐지, 동일 사용자가 여러 개의 단말기에서 접속하는 것을 탐지, 하나의 단말기에서 Proxy를 경유하여 공격하는 것을 탐지, 하나의 단말기에서 IP를 변조하여 공격하는 것을 탐지할 수 있다.동일 단말기에서 다수 사용자 접속 탐지가 되는 경우, 세션 단계에서 웹 해킹 방어를 할 수 있으며, 동일 사용자가 여러 개의 단말기에서 접속 탐지가 되는 경우 동일 단말기에서 ID 변조 공격 방어를 할 수 있다. 또한, 하나의 단말기에서 Proxy 경유 공격 탐지가 되는 경우, Proxy를 경유한 웹 해킹 방어를 할 수 있다.
HTTP 헤더 정보 기반 탐지모듈(5313)은 정상적인 웹 클라이언트가 아닌 호출 트랜잭션을 탐지하여 비정상 트랜잭션을 감지할 수 있다. 일반적으로 외부 공격이 수행되는 경우, 일반적인 요청 브라우저를 통한 호출이 아닌 프로그램을 이용한 비정상 요청등이 발생한다. 따라서, 요청 브라우저 아닌 다른 브라우저가 감지되는 경우 HTTP 헤더 정보 기반 탐지모듈(5313)은 비정상 트랜잭션으로 감지할 수 있다.
또한, HTTP 헤더 정보 기반 탐지모듈(5313)은 검색엔진이나 DDOS 공격 식별, 허용되지 않는 메소드로 호출되는 트랜잭션 식별, 호출 파라미터 패턴 분석 식별을 수행하여 비정상 트랜잭션을 감지할 수 있다.
도 15 내지 도 17은 본 발명의 일 실시예에 따른 HTTP 헤더 정보 기반으로 탐지를 수행하는 일례를 도시한 도면이다.
도 15를 참조하면, HTTP 헤더 정보 기반 탐지모듈(5313)은 HTTP 헤더 중 User-Agent 항목은 웹클라이언트 종류 및 버전 정보가 담겨 있으며, 특정 문자열 또는 블랙 리스트 매핑을 통하여 비정상 트랜잭션을 탐지할 수 있다.
도 16을 참조하면, HTTP 헤더 정보 기반 탐지모듈(5313)은 HTTP 메소드 중 일반적으로 GET, POST만 쓰이며, 이외의 Method는 차단이 필요하다. CONNECT, TRACE 등의 메소드는 우회 공격에 사용되는 것으로서 이와 같은 메소드가 요청되는 경우 비정상 웹 클라이언트로 탐지할 수 있다.
도 17(a)를 참조하면, HTTP 헤더 정보 기반 탐지모듈(5313)은 세션 단계의 웹 해킹 공격 시 자신의 IP를 숨기기 위하여 Proxy 서버를 경유하여 요청하는 경우로 HTTP Header에 "Proxy-Connection" 문자열이 존재하는 경우 또는 User-Agent 값에 Proxy 서버를 식별할 수 있는 문자열이 존재하는 경우 탐지가 가능하다.
도 17(b)를 참조하면, HTTP 헤더 정보 기반 탐지모듈(5313)은 호출 파라미터 매핑을 이용하여 비정상 트랜잭션 즉, 비정상 웹 클라이언트를 탐지할 수 있다. 일례로 GET 및 POST 메소드로 요청되는 호출 파라미터(Query String)에 탐지 패턴을 설정하여 탐지할 수 있다.
도 17(c)를 참조하면, HTTP 헤더 정보 기반 탐지모듈(5313)은 호출 파라미터에 Script가 포함될 경우 비정상 웹 클라이언트를 탐지할 수 있다. 사용자로부터 입력된 데이터에 Script가 포함될 경우 해당 Script가 웹 클라이언트에서 실행되면서 Cookie 값 획득, DOM(Document Object Model) Access, Clipboard Access, Key logging으로 정보를 해킹당할 수 있다. 따라서, HTTP 헤더 정보 기반 탐지모듈(5313)은 사용자가 입력한 데이터를 검사하여 Script등 비정상적인 데이터가 존재하면 비정상으로 탐지한다.
또한, HTTP 헤더 정보 기반 탐지모듈(5313)은 비정상 트랜잭션 탐지에 대한 정규식 생성을 통해 상기 HTTP 헤더 정보에 대한 PCRE 탐지를 수행할 수도 있을 것이다.
다시 도 10을 참조하면, DB 엑세스 정보 기반 탐지모듈(5315)은 WEB 플러그인 에이전트(50)의 DB 엑세스 정보 수집모듈(507)에서 수집된 DB 엑세스 정보를 이용하여 대량 데이터 조회를 감지하거나, SQL 쿼리 및 바인드 변수에 대한 PCRE(Perl Compatible Regular Expressions) 패턴을 탐지하여 비정상 트랜잭션을 탐지할 수 있다.
통계 데이터 기반 탐지모듈(5317)은 도 18에 도시된 바와 같이, 동일 고유세션 ID 기반의 사용자 식별을 통해, 사용자별 과다 호출 탐지, 사용자별 특정 URI 반복 호출 탐지, URI 별 호출 랭킹 기반의 랭킹 급상승 탐지, 비정상 URI 호출 Flow를 탐지할 수 있다.
분석모듈(532)은 세션 ID 기반 통계분석 모듈(5321), HTTP 헤더 정보 기반 통계 분석모듈(5323), URI 성능정보 기반 통계 분석모듈(5325)을 포함할 수 있다.
세션 ID 기반 통계분석 모듈(5321)은 고유세션 ID를 통한 트랜잭션 분석 연속성 제공, 정확한 시간별, 일별 방문자수 산정, 고유세션 ID 별 트랜잭션 분포도 및 통계 분석을 수행할 수 있다. 또한, 사용자별 호출 건수 통계 분석, 사용자별 URI 호출 Flow 분석, 사용자별 연속된 트랜잭션 분포도 분석을 수행할 수 있다. 즉, 종래의 세션 ID를 이용하는 경우에는 웹 브라우저를 닫거나 PC를 종료하는 경우 세션 ID가 새롭게 생성됨으로 세션 기반의 통계 분석이 불가능하였다. 그러나, 본 발명에서는 사용자 ID 별로 부여되는 변하지 않는 고유세션 ID를 이용하여 다양한 통계 분석을 수행할 수 있는 장점이 있다.
HTTP 헤더 정보 기반 통계 분석모듈(5323)은 HTTP 헤더 정보(User-Agent 정보, HTTP Method, Remote IP 등)를 기반으로 호출 클라이언트 별 통계 분석, 요청 Method 별 통계분석, 지역별 통계 분석 등을 수행할 수 있다.
URI 성능정보 기반 통계 분석모듈(5325)는 URI 성능정보를 이용한 사용자별(고유세션 ID, 사용자 ID, 사용자 세션 ID등을 이용하여), 도메인 별 각종 통계지표 및 상기 URI 별 통계정보를 분석한다.
차단제어모듈(533)은 차단정책 관리모듈(5331) 및 차단정책 제어모듈(5333)을 포함할 수 있다.
차단 정책 관리모듈(5331)은 User-Agent 블랙리스트 관리, 차단 Method 관리, 차단 세션 ID 관리, 차단 사용자 ID 관리, 차단 사용자 IP 관리 등을 수행한다.
차단 정책 제어모듈(5333)은 영구 차단 제어, 시간 설정 차단 제어, 자동 차단 제어, 수동 차단 제어 등의 차단 정책을 제어한다.
차단제어모듈(533)은 통신 모듈을 통해 WAS 플러그인 에이전트(50)로 차단 정책을 송신하며, 비정상 트랜잭션이 탐지되는 경우 차단 명령을 통신모듈(534)를 통해 WAS 플러그인 에이전트(50) 또는 WEB 플러그인 에이전트(70)로 전송할 수 있다. 또한, WAS 플러그인 에이전트(50) 또는 WEB 플러그인 에이전트(70)를 통해 차단 현황을 수신할 수 있다. 종래의 기존 보안 관제 체계는 SSL/TSL 암호화구간에서 트랜잭션 정보를 수집함으로 제한적인 정보만이 분석 가능할 뿐, 패킷 플로우의 분석이 불가능하여 통계정보 분석에 한계가 있었다. 그러나, 본 발명에서는 웹 애플리케이션 서버 메모리내의 복호화된 각종 정보를 수집할 수 있으므로, 다양한 형태의 통계 분석을 수행할 수 있는 이점이 있다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.
컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.
또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.

Claims (14)

  1. 웹 애플리케이션 서버에 설치된 WAS 플러그인 에이전트 또는 웹 서버에 설치된 WEB 플러그인 에이전트로부터 트랜잭션 정보를 수신하고, 정상적인 트랜잭션 정보인지 또는 비정상적인 트랜잭션 정보인지를 분석하고, 분석결과에 따라 탐지정보를 생성하며, 상기 비정상 트랜잭션에 대한 차단명령을 상기 WAS 플러그인 에이전트로 전송하는 관리서버를 포함하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  2. 제1항에 있어서,
    상기 WAS 플러그인 에이전트는 상기 웹 애플리케이션 서버에 플러그인 방식으로 설치되어 동작하며, 상기 웹 서버 또는 웹 애플리케이션 서버에서 복호화된 사용자의 트랜잭션 정보를 상기 웹 애플리케이션 서버의 메모리에서 수집하며,
    상기 WEB 플러그인 에이전트는 상기 웹 서버에 플러그인 방식으로 설치되어 동작하며, 상기 웹 서버에서 복호화된 사용자의 트랜잭션 정보를 상기 웹 서버의 메모리에서 수집하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  3. 제2항에 있어서,
    상기 WAS 플러그인 에이전트는 사용자의 웹 애플리케이션 서버로의 서비스 요청 시, 영구 쿠키에 변하지 않는 고유세션 ID가 있는지 탐색하고, 고유세션 ID가 없는 경우, 상기 사용자에 대한 고유 세션 ID를 생성하여 사용자의 웹 클라이언트로 전송하며, 생성된 고유세션 ID를 영구 쿠키에 설정하여 이후 서비스 요청시 고유세션 ID로 사용자를 구분할 수 있도록 하는 고유세션 ID 관리모듈을 포함하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  4. 제3항에 있어서,
    상기 WAS 플러그인 에이전트는 상기 트랜잭션 정보에 포함된 HTTP 헤더를 분석하여 HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referer, Accept-Encoding, Accept-Language, Cookie, 기타 Header 정보, Attribute 정보등을 수집하는 HTTP 헤더 정보 수집모듈;
    상기 트랜잭션 정보로부터 사용자 세션 ID, 상기 고유세션 ID를 수집하는 웹 세션 ID 수집 모듈;
    상기 트랜잭션 정보 및 트랜잭션 처리시에 포함된 사용자 ID 정보를 수집하는 사용자 ID 정보 수집모듈;
    상기 트랜잭션 정보에 포함된 DB 엑세스 정보로부터 SQL 수행건수, SQL Bind 변수, Select 건수, Insert 건수, Update 건수, Delete 건수 및 커넥션풀 사용량, 커넥션풀 미반환 정보들을 수집하는 DB 엑세스 정보 수집모듈;
    상기 웹 애플리케이션 서버의 호스트네임, 웹 애플리케이션 서버 컨테이너명 및 인스턴트 명, 서비스 포트, OS 및 웹 애플리케이션 리소스 사용량 등의 정보를 수집하는 웹 애플리케이션 서버 정보 수집모듈;
    상기 트랜잭션 정보에 포함된 URI(Uniform Resource Identifier) 트랜잭션 정보 도메인 및 접속포트 정보, 접속 URI, 호출시간, 전체 응답시간, 구간별 응답시간, CPU 리소스 사용량, 처리 결과, AP 오류 및 Query String 정보를 수집하는 URI 정보 수집모듈; 중 적어도 하나의 수집모듈을 포함하는 정보수집모듈을 포함하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  5. 제2항에 있어서,
    상기 WEB 플러그인 에이전트는 사용자의 웹 서버로의 서비스 요청 시, 영구 쿠키에 변하지 않는 고유세션 ID가 있는지 탐색하고, 고유세션 ID가 없는 경우, 상기 사용자에 대한 고유 세션 ID를 생성하여 사용자의 웹 클라이언트로 전송하며, 생성된 고유세션 ID를 영구 쿠키에 설정하여 이후 서비스 요청 시 고유세션 ID로 사용자를 구분할 수 있도록 하는 고유세션 ID 관리모듈을 더 포함하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  6. 제5항에 있어서,
    상기 WEB 플러그인 에이전트는 상기 트랜잭션 정보에 포함된 HTTP 헤더를 분석하여 HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referer, Accept-Encoding, Accept-Language, Cookie, 기타 Header 정보, Attribute 정보 중 적어도 하나의 정보를 수집하는 HTTP 헤더 정보 수집모듈;
    상기 트랜잭션 정보로부터 사용자 세션 ID, 상기 고유세션 ID를 수집하는 웹 세션 ID 수집 모듈;
    상기 트랜잭션 정보 및 트랜잭션 처리시에 포함된 사용자 ID 정보를 수집하는 사용자 ID 정보 수집모듈;
    상기 웹 서버의 호스트네임, 웹 서버 컨테이너명 및 인스턴트 명, 서비스 포트, OS 및 웹 서버 리소스 사용량 등의 정보를 수집하는 웹 서버 정보 수집모듈; 및
    상기 트랜잭션 정보에 포함된 URI(Uniform Resource Identifier) 트랜잭션 정보 도메인 및 접속포트 정보, 접속 URI, 호출시간, 전체 응답시간, 구간별 응답시간, CPU 리소스 사용량, 처리 결과, AP 오류 및 Query String 정보를 수집하는 URI 정보 수집모듈; 중 적어도 하나의 수집모듈을 포함하는 정보수집모듈을 포함하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  7. 제4항 또는 제6항 중 어느 한항에 있어서,
    상기 관리 서버는,
    최초 트랜잭션 정보가 요청된 후 상기 사용자 세션 ID 및 상기 고유세션 ID가 생성된 이후 트랜잭션 정보가 재 요청될 시, 상기 트랜잭션 정보에 상기 사용자 세션 ID 및 고유세션 ID가 유지되지 않는 경우 DDOS 공격 또는 웹 크롤러인 것으로 탐지하는 제1 탐지,
    상기 트랜잭션 정보가 재 요청될 시 상기 사용자 세션 ID만 유지되고, 상기 고유세션 ID가 유지되지 않는 경우 사용자의 웹 클라이언트가 해킹용 프로그램을 통해 동작되는 것으로 탐지하는 제2 탐지,
    상기 고유 세션 ID와 상기 사용자 ID의 매핑을 통한 제3 탐지 중 적어도 하나의 탐지를 수행하는 세션 ID 기반 탐지 모듈을 포함하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  8. 제7항에 있어서,
    상기 세션 ID 기반 탐지 모듈은 상기 고유세션 ID와 사용자 ID의 매핑을 통해 동일 단말기에서 다수 사용자가 접속하는 것을 탐지, 동일 사용자가 여러 개의 단말기에서 접속하는 것을 탐지, 하나의 단말기에서 Proxy를 경유하여 공격하는 것을 탐지 또는 하나의 단말기에서 IP를 변조하여 공격하는 것을 탐지하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  9. 제4항 또는 제6항 중 어느 한항에 있어서,
    상기 관리 서버는
    웹 클라이언트의 종류 및 버전 정보가 담겨있는 상기 User-agent 정보를 식별하여, 상기 User-agent에 특정 문자열 존재 유무 또는 블랙 리스트 매핑을 통해 비정상 트랜잭션으로 탐지하는 제1 탐지;
    상기 HTTP Method 중 허용되지 않는 Method가 포함된 경우 비정상 트랜잭션으로 탐지하는 제2 탐지;
    상기 HTTP 헤더에 Proxy-connection 문자열이 존재 또는 상기 User-agent에 Proxy 서버를 식별할 수 있는 문자열이 존재하는 경우 비정상 트랜잭션으로 탐지하는 제3 탐지; 및
    상기 HTTP 헤더 정보에 대한 PCRE 탐지를 수행하는 제 4 탐지 중 적어도 하나의 탐지를 포함하는 HTTP 헤더 정보 기반 탐지모듈을 포함하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  10. 제4항 또는 제6항 중 어느 한 항에 있어서,
    상기 관리 서버는,
    상기 고유세션 ID를 통한 트랜잭션 분석 연속성 제공, 정확한 시간 별, 일별 방문자수 산정, 고유세션 ID 별 트랜잭션 분포도 및 통계 분석을 수행하는 세션 ID 기반 통계 분석모듈;
    상기 HTTP 헤더 정보를 이용한 호출 브라우저 별 통계 분석을 수행하는 HTTP 헤더 정보 기반 통계 분석모듈; 및
    상기 URI 성능정보를 이용한 상기 도메인 별 각종 통계지표 및 상기 URI 별 통계정보를 분석하는 URI 성능정보 기반 통계 분석모듈을 포함하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  11. 제4항 또는 제6항 중 어느 한 항에 있어서,
    상기 관리 서버는,
    User-Agent 블랙리스트 관리, 차단 Method 관리, 차단 세션 ID 관리, 차단 사용자 ID 관리, 차단 사용자 IP 관리 등에 대한 차단 정책을 관리 하는 차단 정책 관리모듈;
    영구 차단 제어, 시간 설정 차단 제어, 자동 차단 제어, 수동 차단 제어등의 차단 정책을 제어하는 차단 정책 제어모듈;을 포함하는 차단제어모듈을 더 포함하며,
    상기 차단제어모듈은 통신 모듈을 통해 상기 WAS 플러그인 에이전트로 차단 정책을 송신하며, 비정상 트랜잭션이 탐지되는 경우 차단 명령을 상기 WAS 플러그인 에이전트로 전송하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  12. 제11항에 있어서,
    상기 WAS 플러그인 에이전트 또는 상기 WEB 플러그인 에이전트는
    상기 차단제어모듈로부터 차단 명령를 수신하는 경우 차단 명령에 해당하는 트랜잭션에 대한 차단 기능을 수행하는 비정상 트랜잭션 관리모듈을 더 포함하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  13. 제4항에 있어서,
    상기 관리 서버는,
    상기 DB 엑세스 정보를 이용하여 대량 데이터 조회를 감지하거나, SQL 쿼리 및 바인드 변수에 대한 PCRE(Perl Compatible Regular Expressions) 패턴을 탐지하여 비정상 트랜잭션을 탐지하는 DB 엑세스 정보 기반 탐지모듈; 및
    동일 고유세션 ID 기반의 사용자 식별을 통해, 사용자별 과다 호출 탐지, 사용자별 특정 URI 반복 호출 탐지, URI 별 호출 랭킹 기반의 랭킹 급상승 탐지, 비정상 URI 호출 Flow를 탐지하는 통계 데이터 기반 탐지모듈을 포함하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
  14. 제6항에 있어서,
    상기 관리 서버는,
    동일 고유세션 ID 기반의 사용자 식별을 통해, 사용자별 과다 호출 탐지, 사용자별 특정 URI 반복 호출 탐지, URI 별 호출 랭킹 기반의 랭킹 급상승 탐지, 비정상 URI 호출 Flow를 탐지하는 통계 데이터 기반 탐지모듈을 포함하는 것을 특징으로 하는 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
PCT/KR2016/013134 2016-04-01 2016-11-15 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치 WO2017171188A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/766,005 US10728267B2 (en) 2016-04-01 2016-11-15 Security system using transaction information collected from web application server or web server

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2016-0040326 2016-04-01
KR1020160040323A KR101658456B1 (ko) 2016-04-01 2016-04-01 웹 애플리케이션 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치
KR1020160040326A KR101650475B1 (ko) 2016-04-01 2016-04-01 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치
KR10-2016-0040323 2016-04-01

Publications (1)

Publication Number Publication Date
WO2017171188A1 true WO2017171188A1 (ko) 2017-10-05

Family

ID=59964776

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2016/013134 WO2017171188A1 (ko) 2016-04-01 2016-11-15 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치

Country Status (2)

Country Link
US (1) US10728267B2 (ko)
WO (1) WO2017171188A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112703496A (zh) * 2018-09-16 2021-04-23 微软技术许可有限责任公司 关于恶意浏览器插件对应用用户的基于内容策略的通知

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10574702B1 (en) * 2018-01-03 2020-02-25 Amazon Technologies, Inc. Authorization for build configuration using telemetry data assessment
CA3055993C (en) * 2018-09-20 2024-01-02 Idera, Inc. Database access, monitoring, and control system and method for reacting to suspicious database activities
US11032241B2 (en) * 2019-01-08 2021-06-08 Walmart Apollo, Llc Systems and methods for application level fault injection for parallel tests
US10798185B2 (en) * 2019-01-08 2020-10-06 Walmart Apollo, Llc Systems and methods for automated session identifier propagation
CN112073418B (zh) * 2020-09-10 2022-01-14 北京微步在线科技有限公司 加密流量的检测方法、装置及计算机可读存储介质
CN114297641A (zh) * 2021-12-31 2022-04-08 深信服科技股份有限公司 一种Web应用的异常检测方法、系统、存储介质和终端

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050036010A (ko) * 2003-10-14 2005-04-20 (주)데이타헤븐 시스템 모니터링 방법 및 시스템 모니터링 시스템
KR20100071747A (ko) * 2008-12-19 2010-06-29 주식회사 케이티 서비스 거부 공격을 탐지하는 단말, 네트워크 장비 및 방법
KR20110081103A (ko) * 2010-01-06 2011-07-13 벌리더티 센서스 인코포레이티드 보안 트랜잭션 시스템 및 방법
KR101282297B1 (ko) * 2012-03-20 2013-07-10 박상현 트랜젝션 패턴분석·모니터링을 통한 서비스 네트워크형 통합보안장치 및 방법
JP2015519776A (ja) * 2012-04-01 2015-07-09 オーセンティファイ・インクAuthentify Inc. マルチパーティシステムにおける安全な認証

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7237030B2 (en) * 2002-12-03 2007-06-26 Sun Microsystems, Inc. System and method for preserving post data on a server system
US7934253B2 (en) * 2006-07-20 2011-04-26 Trustwave Holdings, Inc. System and method of securing web applications across an enterprise

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050036010A (ko) * 2003-10-14 2005-04-20 (주)데이타헤븐 시스템 모니터링 방법 및 시스템 모니터링 시스템
KR20100071747A (ko) * 2008-12-19 2010-06-29 주식회사 케이티 서비스 거부 공격을 탐지하는 단말, 네트워크 장비 및 방법
KR20110081103A (ko) * 2010-01-06 2011-07-13 벌리더티 센서스 인코포레이티드 보안 트랜잭션 시스템 및 방법
KR101282297B1 (ko) * 2012-03-20 2013-07-10 박상현 트랜젝션 패턴분석·모니터링을 통한 서비스 네트워크형 통합보안장치 및 방법
JP2015519776A (ja) * 2012-04-01 2015-07-09 オーセンティファイ・インクAuthentify Inc. マルチパーティシステムにおける安全な認証

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112703496A (zh) * 2018-09-16 2021-04-23 微软技术许可有限责任公司 关于恶意浏览器插件对应用用户的基于内容策略的通知
CN112703496B (zh) * 2018-09-16 2024-03-08 微软技术许可有限责任公司 关于恶意浏览器插件对应用用户的基于内容策略的通知

Also Published As

Publication number Publication date
US10728267B2 (en) 2020-07-28
US20180302426A1 (en) 2018-10-18

Similar Documents

Publication Publication Date Title
WO2017171188A1 (ko) 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치
CN108780485B (zh) 基于模式匹配的数据集提取
KR101010302B1 (ko) Irc 및 http 봇넷 보안 관제를 위한 관리 시스템 및 그 방법
US11032301B2 (en) Forensic analysis
WO2018107811A1 (zh) 网络安全联合防御方法、装置、服务器和存储介质
WO2016006520A1 (ja) 検知装置、検知方法及び検知プログラム
WO2011010823A2 (ko) 클라우드 컴퓨팅을 이용한 DDoS 공격 탐지 및 차단 방법 및 서버
WO2011105659A1 (ko) 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체
WO2016186975A1 (en) Detection of sql injection attacks
CN113691566B (zh) 基于空间测绘和网络流量统计的邮件服务器窃密检测方法
KR101658450B1 (ko) 웹 애플리케이션 서버로부터 수집된 트랜잭션 정보 및 고유세션 id 통한 사용자 식별을 이용한 보안장치.
KR101658456B1 (ko) 웹 애플리케이션 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치
Yamada et al. RAT-based malicious activities detection on enterprise internal networks
Ko et al. Analysis of an algorithm for distributed recognition and accountability
KR101487476B1 (ko) 악성도메인을 검출하기 위한 방법 및 장치
CN114760083B (zh) 一种攻击检测文件的发布方法、装置及存储介质
WO2019231089A1 (ko) 보안정책 및 감사로그 양방향 조회, 대조, 추적 시스템 및 그 방법
KR101650475B1 (ko) 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치
WO2015102356A1 (ko) 현재 시간 기준으로 공인 아이피를 공유하는 인터넷 접속 요청 트래픽을 선별적 허용 또는 차단하는 방법 및 그 방법을 실행하기 위한 공인 아이피 공유의 현재 상태 검출 및 차단 시스템
KR20020072618A (ko) 네트워크 기반 침입탐지 시스템
KR101754195B1 (ko) 복수의 로그 수집 서버를 기반으로 한 보안 강화 방법
KR20020012855A (ko) 통합로그 분석 및 관리 시스템 및 그 방법
WO2020057156A1 (zh) 一种安全管理方法和安全管理装置
CN116996238A (zh) 一种网络异常访问的处理方法以及相关装置
KR20150026187A (ko) 드로퍼 판별을 위한 시스템 및 방법

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 15766005

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16897208

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16897208

Country of ref document: EP

Kind code of ref document: A1