AQL 데이터 검색 함수
AQL(Ariel Query Language) 기본 제공 함수를 사용하면 Ariel 데이터베이스에서 데이터 조회 함수 및 필드 ID 특성을 사용하여 데이터를 검색할 수 있습니다.
다음 AQL 함수를 사용하여 Ariel 데이터베이스에서 데이터를 추출하십시오.
데이터 검색 함수
- applicationname
- ARIELSERVERS4EPID
- ARIELSERVERS4EPNAME
- AssetHostname
- ASSETPROPERTY
- AssetUser
- categoryName
- 컴포넌트ID
- 도메인 이름
- 글로벌 보기
- 지역: :lookup
- GEO: :LOOKUP_BY_DOMAIN
- 지역: :LOOKUP_TEXT
- 지역: :LOOKUP_TEXT_BY_DOMAIN
- 지역:: 거리
- 지역: :distance_by_domain
- hostname
- INCIDR
- 인오펜스
- LogSourceName
- LogSourceGroupName
- 로그 소스 유형 이름
- MATCHESASSETSEARCH
- NetworkName
- 전체 네트워크 이름
- 시간 오프셋
- 매개변수 EXCLUDESERVERS
- 매개변수 REMOTESERVERS
- ProcessorName
- protocolName
- QidName
- QIDESCRIPTION
- ReferenceMap
- REFERENCEMAPSETCONTAINS
- REFERENCETABLE
- REFERENCESETCONTAINS
- Rulename
APPLICATIONNAME
- 용도
애플리케이션 ID별로 플로우 애플리케이션 이름을 리턴합니다.
- 매개변수
애플리케이션 ID
- 예
SELECT APPLICATIONNAME(applicationid) AS 'Name of App' FROM flows
ARIELSERVERS4EPID
- 용도
ARIELSERVERS4EPID 함수는 PARAMETERS REMOTESERVERS 또는 PARAMETERS EXCLUDESERVERS와 함께 사용하는 경우 이벤트 프로세서 ID를 지정할 수 있습니다.
- 매개변수
다음 예제는 PARAMETERS REMOTESERVERS 또는 PARAMETERS EXCLUDESERVERS와 함께 ARIELSERVERS4EPID 함수를 사용하는 방법을 보여줍니다.ARIELSERVERS4EPID(processor_ID)PARAMETERS EXCLUDESERVERS=ARIELSERVERS4EPID(processor_ID)PARAMETERS REMOTESERVERS=ARIELSERVERS4EPID(processor_ID)
- 예
다음 예제에서는
ARIELSERVERS4EPID(8)의 검색 결과만 출력에 포함됩니다. ARIELSERVERS4EPID 함수의 매개변수로 지정한 프로세서 ID가 QRadar 배치에 없는 경우 조회가 실행되지 않습니다.SELECT ARIELSERVERS4EPID(8), ARIELSERVERS4EPID(11), processorid, PROCESSORNAME(processorid), LOGSOURCENAME(logsourceid) from events GROUP BY logsourceid LAST 20 MINUTES PARAMETERS REMOTESERVERS=ARIELSERVERS4EPID(8)
- 다음 예제와 같이 ARIELSERVERS4EPID 함수를 사용하여 ID로 식별되는 특정 이벤트 프로세서에 연결된 Ariel 서버를 리턴할 수도 있습니다.
ARIELSERVERS4EPNAME
- 용도
ARIELSERVERS4EPNAME 함수는 PARAMETERS REMOTESERVERS 또는 PARAMETERS EXCLUDESERVERS와 함께 사용하는 경우 이벤트 프로세서 이름을 지정할 수 있습니다.
- 매개변수
다음 예제는 ARIELSERVERS4EPNAME PARAMETERS REMOTESERVERS 또는 PARAMETERS EXCLUDESERVERS를 사용하는 방법을 보여줍니다.ARIELSERVERS4EPNAME('eventprocessor_name')PARAMETERS EXCLUDESERVERS=ARIELSERVERS4EPNAME ('eventprocessor104')PARAMETERS REMOTESERVERS=ARIELSERVERS4EPNAME ('eventprocessor255')
- 예
다음 예제에서는
eventprocessor104와 연관된 서버의 레코드가 검색에서 제외됩니다.SELECT processorid,PROCESSORNAME(processorid), LOGSOURCENAME(logsourceid) FROM events GROUP BY logsourceid PARAMETERS EXCLUDESERVERS=ARIELSERVERS4EPNAME ('eventprocessor104')
ASSETHOSTNAME
- 용도
특정 시점에서 자산의 호스트 이름을 검색합니다.
선택적으로 특정 도메인의 자산을 대상으로 지정하도록 도메인을 지정할 수 있습니다.ASSETHOSTNAME(sourceip)ASSETHOSTNAME(sourceip, NOW())ASSETHOSTNAME(sourceip, domainid)
- 매개변수
IP 주소, (시간소인 및 도메인 ID는 선택사항임)
시간소인이 지정되지 않은 경우 현재 시간이 사용됩니다.
- 예
SELECT ASSETHOSTNAME(destinationip, NOW()) AS 'Host Name' FROM events
ASSETPROPERTY
- 용도
자산에 대한 특성을 검색합니다.
선택적으로 특정 도메인의 자산을 대상으로 지정하도록 도메인을 지정할 수 있습니다.ASSETPROPERTY ('Unified Name', sourceIP, domainId)
- 매개변수
특성 이름, IP 주소
도메인 ID는 선택사항입니다.
- 예
SELECT ASSETPROPERTY('Location',sourceip) AS Asset_location, COUNT(*) AS 'event count' FROM events GROUP BY Asset_location LAST 1 days
ASSETUSER
- 용도
특정 시점에서 자산의 사용자를 검색합니다.
선택적으로 특정 도메인의 자산을 대상으로 지정하도록 도메인을 지정할 수 있습니다.ASSETUSER(sourceIP,NOW(), domainId)
- 매개변수
- IP 주소, (시간소인 및 도메인 ID는 선택사항임)
- 예
SELECT ASSETUSER(sourceip, now()) AS 'Username of Asset' FROM events
CATEGORYNAME
- 용도
카테고리 ID로 카테고리의 이름을 검색합니다.
CATEGORYNAME(Category)
- 매개변수
카테고리
- 예
SELECT sourceip, category, CATEGORYNAME(category) AS 'Category name' FROM events
COMPONENTID
- 용도
지정된 이름을 가진 구성요소의 ID를 검색합니다.
예를 들어, ARIELSERVERS4EPNAME()은(는) ARIELSERVERS4EPID(COMPONENTID(<event_processor_name>)) 함수의 단축키입니다.
- 매개변수
COMPONENTID(<component_name>))
- 예
SELECT * from events where processorid = COMPONENTID('eventprocessor0')
DOMAINNAME
- 용도
도메인 ID로 도메인 이름을 검색합니다.
DOMAINNAME(domainID)
- 매개변수
도메인 ID
- 예
SELECT sourceip, username, DOMAINNAME(domainid) AS 'Domain name' FROM events
GLOBALVIEW
- 용도
입력된 시간 범위에 기반하여 주어진 저장된 검색 이름에 대해 GLOBALVIEW 데이터베이스 결과를 리턴합니다.
이 조회는 API를 통해서만 실행할 수 있습니다.
GLOBALVIEW 데이터베이스 액세스에 대한 자세한 정보는 IBM® Security QRadar 관리 안내서를 참조하십시오.
- 매개변수
저장된 검색, 시간 범위(DAILY, NORMAL, HOURLY)
- 예
SELECT * FROM GLOBALVIEW ('Top Log Sources','DAILY') LAST 2 days
GEO::LOOKUP
- 용도
선택된 IP 주소에 대해 MaxMind가 제공한 위치 데이터를 리턴합니다. 데이터는 JSON 형식으로 리턴됩니다.
- 매개변수
IP 주소(필수)
문자열(하나 이상 필요함)
city,continent,physical_country,registered_country,represented_country,location,postal,subdivisions,traits,geo_json
- 예
SELECT sourceip, GEO::LOOKUP(sourceip, 'city') AS GEO_CITY FROM events last 10 minutes
GEO::LOOKUP_BY_DOMAIN
- 용도
다음에서 제공한 위치 데이터를 반환합니다.MaxMind, 선택한 IP 주소 및 도메인 ID에 대해 데이터는 JSON 형식으로 리턴됩니다.
- 매개변수
IP 주소 (필수), 도메인 ID
문자열(하나 이상 필요함)
city,continent,physical_country,registered_country,represented_country,location,postal,subdivisions,traits,geo_json
- 예
SELECT sourceip, GEO::LOOKUP_BY_DOMAIN(sourceip, 'city', 'my_domain_id') AS GEO_CITY FROM events last 10 minutes
GEO::LOOKUP_TEXT
- 용도
다음에서 제공하는 위치 데이터를 일반 텍스트로 반환합니다.MaxMind, 선택한 IP 주소에 대해.
- 매개변수
IP 주소 (필수), 기본 필드 이름
문자열(하나 이상 필요함)
city_name,geo_id,continent_name,continent_geo_id,country_name,country_geo_id,country_iso_code,physical_country_name,physical_country_geo_id,physical_country_iso_code,registered_country_name,registered_country_geo_id,registered_country_iso_code,accuracy_radius,latitude,longitude,metro_code,time_zone
- 예
SELECT sourceip, GEO::LOOKUP_TEXT(sourceip, 'city_name') AS GEO_CITY FROM events last 10 minutes
GEO::LOOKUP_TEXT_BY_DOMAIN
- 용도
다음에서 제공하는 위치 데이터를 일반 텍스트로 반환합니다.MaxMind, 선택한 IP 주소 및 도메인 ID에 대해
- 매개변수
IP 주소 (필수), 기본 필드 이름, 도메인 ID
문자열(하나 이상 필요함)
city_name,geo_id,continent_name,continent_geo_id,country_name,country_geo_id,country_iso_code,physical_country_name,physical_country_geo_id,physical_country_iso_code,registered_country_name,registered_country_geo_id,registered_country_iso_code,accuracy_radius,latitude,longitude,metro_code,time_zone
- 예
SELECT sourceip, GEO::LOOKUP_TEXT_BY_DOMAIN(sourceip, 'city_name', 'my_domain_id') AS GEO_CITY FROM events last 10 minutes
GEO::DISTANCE
- 용도
두 IP 주소의 거리(킬로미터)를 리턴합니다.
- 매개변수
IP 주소(두 개 필요)
- 예
SELECT GEO::DISTANCE(sourceip, destinationip) AS GEO_DISTANCE FROM events last 10 minutes
GEO::DISTANCE_BY_DOMAIN
- 용도
두 IP 주소의 거리(킬로미터)를 리턴합니다. 및 도메인 ID
- 매개변수
IP 주소 (두 개의 필수), 도메인 ID
- 예
SELECT GEO::DISTANCE(sourceip, destinationip, domainid) AS GEO_DISTANCE FROM events last 10 minutes
HOSTNAME
- 용도
특정 프로세서 ID가 포함된 이벤트 프로세서의 호스트 이름을 리턴합니다.
HOSTNAME(processorId)
- 매개변수
프로세서 ID
- 예
SELECT HOSTNAME(processorId) FROM events
INCIDR
- 용도
INCIDR로 지정된 소스/대상 CIDR IP 주소를 참조하여 SELECT문의 출력을 필터링합니다.
- 매개변수
IP/CIDR, IP 주소
- 예
SELECT sourceip, username FROM events WHERE INCIDR('172.16.0.0/16', sourceip)
INOFFENSE
- 용도
이벤트 또는 플로우가 지정된 오펜스에 속하는 경우 다음을 리턴합니다.true.
- 매개변수
오펜스 ID
- 예
SELECT * FROM events WHERE InOffense(123)
LOGSOURCENAME
- 용도
로그 소스 ID별로 로그 소스의 이름을 검색합니다.
LOGSOURCENAME(logsourceid)
- 매개변수
로그 소스 ID
- 예
SELECT * FROM events WHERE LOGSOURCENAME(logsourceid) ILIKE '%mylogsourcename%'
LOGSOURCEGROUPNAME
- 용도
로그 소스 그룹 ID별로 로그 소스 그룹의 이름을 검색합니다.
LOGSOURCEGROUPNAME(deviceGroupList)
- 매개변수
디바이스 그룹 목록
- 예
SELECT sourceip, logsourceid FROM events WHERE LOGSOURCEGROUPNAME(devicegrouplist) ILIKE '%other%'
LOGSOURCETYPENAME
- 용도
디바이스 유형별로 로그 소스 유형의 이름을 검색합니다.
LOGSOURCETYPENAME(deviceType)
- 매개변수
디바이스 유형
- 예
SELECT LOGSOURCETYPENAME(devicetype) AS 'Device names', COUNT(*) FROM events GROUP BY "Device names" LAST 1 DAYS디바이스 이름 및 이벤트 수를 리턴합니다.
MATCHESASSETSEARCH
- 용도
- 자산이 저장된 검색의 결과에 리턴되면, true를 리턴합니다.
- 매개변수
저장된 검색 이름, IP 주소
- 예
MATCHESASSETSEARCH ('My Saved Search', sourceIP)
NETWORKNAME
- 용도
- 전달된 호스트에 대한 네트워크 계층 구조에서 네트워크 이름을 검색합니다.
- 매개변수
호스트 특성(도메인은 선택사항임)
- 예
SELECT NETWORKNAME(sourceip) ILIKE 'servers' AS 'My Networks' FROM flows
FULLNETWORKNAME
- 용도
- 전달된 호스트의 네트워크 계층 구조에서 전체 네트워크 이름을 리턴합니다.
- 매개변수
호스트 특성(도메인은 선택사항임)
- 예
SELECT FULLNETWORKNAME('1.2.3.4') FROM events LIMIT 1
OFFENSE_TIME
7.4.3 수정팩 1의 새로운 기능
- 용도
오펜스가 활성 상태일 수 있는 적용 가능한 시간으로 조회를 제한합니다.
이 함수는 조회의 속도를 높입니다.
- 매개변수
오펜스 ID
- 예
SELECT * FROM events WHERE INOFFENSE(12345) times OFFENSE_TIME(12345)
PARAMETERS EXCLUDESERVERS
- 용도
- 지정된 서버를 제외하여 검색 기준을 필터링합니다.
- 매개변수
[서버 IP 주소:포트 번호]
이벤트 프로세서에는 포트 32006을 사용하고 콘솔에는 포트 32011을 사용하십시오.
매개변수는 쉼표로 구분된 인수 목록을 채택합니다. 예를 들면 다음과 같습니다.
"host1:port1,host2:port2,host3:port3".
- 예
다음 예제에서는 192.0.2.0의 검색 결과가 제외됩니다. 콘솔을 제외하려면
localhost또는127.0.0.1을 사용해야 합니다. 이 조회에서 콘솔의 IP 주소를 사용하지 마십시오.SELECT processorid,PROCESSORNAME(processorid), LOGSOURCENAME(logsourceid) from events GROUP BY logsourceid PARAMETERS EXCLUDESERVERS='192.0.2.0:32006'다음 예제에서는 콘솔의 검색 결과가 제외됩니다.
SELECT processorid,PROCESSORNAME(processorid), LOGSOURCENAME(logsourceid) FROM events GROUP BY logsourceid start '2017-03-15 10:26' STOP '2017-03-15 10:30' PARAMETERS EXCLUDESERVERS='127.0.0.1:32011'
다음 예제에서는 콘솔의 검색 결과가 제외됩니다. 이 예제에서는 Console을
localhost라고 합니다.SELECT processorid,PROCESSORNAME(processorid), LOGSOURCENAME(logsourceid) from events GROUP BY logsourceid start '2017-03-15 10:25' STOP '2017-03-15 10:30' PARAMETERS EXCLUDESERVERS='localhost:32011'다음 예제는 여러 인수를 사용하여 콘솔과 두 개의 다른 서버에서 검색 결과를 제외합니다.
SELECT processorid,PROCESSORNAME(processorid), LOGSOURCENAME(logsourceid) from events GROUP BY logsourceid start '2017-04-15 10:25' STOP '2017-04-15 10:30' PARAMETERS EXCLUDESERVERS='127.0.0.1:32011,192.0.2.0:32006,172.11.22.31:32006'
다음 함수를 사용하여 조회의 이벤트 프로세서 ID를 지정하십시오.
- 예
다음 예제에서는
ARIELSERVERS4EPID(8)의 모든 결과가 검색에서 제외됩니다.SELECT processorid, PROCESSORNAME(processorid), LOGSOURCENAME(logsourceid) from events GROUP BY logsourceid LAST 20 MINUTES PARAMETERS EXCLUDESERVERS=ARIELSERVERS4EPID(8)다음 함수를 사용하여 조회의 이벤트 프로세서 이름을 지정하십시오.
- 예
다음 예제에서는
eventprocessor104와 연관된 서버의 레코드가 검색에서 제외됩니다.SELECT processorid,PROCESSORNAME(processorid), LOGSOURCENAME(logsourceid) FROM events GROUP BY logsourceid PARAMETERS EXCLUDESERVERS=ARIELSERVERS4EPNAME ('eventprocessor104')
PARAMETERS REMOTESERVERS
- 용도
PARAMETERS REMOTESERVERS함수를 사용하여 특정 서버로 검색 범위를 세분화하면 모든 호스트를 검색하지 않기 때문에 검색 속도가 빨라집니다.
- 매개변수
[서버 IP 주소:포트 번호]
이벤트 프로세서에는 포트 32006을 사용하고 콘솔에는 포트 32011을 사용하십시오.
여러 인수에 대해 쉼표로 구분된 목록을 사용하십시오. 예를 들면 다음과 같습니다.
"host1:port1,host2:port2,host3:port3".
- 예
다음 예제에서는 지정된 서버만 검색됩니다.
SELECT * FROM EVENTS START '2016-09-08 16:42' STOP '2016-09-08 16:47' PARAMETERS REMOTESERVERS='192.0.2.0:32006'다음 예제에서는 콘솔과 다른 두 서버의 검색 결과를 포함하는 다중 서버가 지정됩니다.
SELECT processorid,PROCESSORNAME(processorid), LOGSOURCENAME(logsourceid) from events GROUP BY logsourceid start '2017-04-15 10:25' STOP '2017-04-15 10:30' PARAMETERS REMOTESERVERS='127.0.0.1:32011,192.0.2.0:32006,172.11.22.31:32006'다음 함수를 사용하여 조회의 이벤트 프로세서 ID를 지정하십시오.
- 예
다음 예제에서는
ARIELSERVERS4EPID(8)의 검색 결과만 출력에 포함됩니다.SELECT ARIELSERVERS4EPID(8), ARIELSERVERS4EPID(11), processorid, PROCESSORNAME(processorid), LOGSOURCENAME(logsourceid) from events GROUP BY logsourceid LAST 20 MINUTES PARAMETERS REMOTESERVERS=ARIELSERVERS4EPID(8)참고: ARIELSERVERS4EPID 함수에 대한 매개변수로 지정하는 프로세서 ID가 QRadar 배치에 없는 경우 조회가 실행되지 않습니다.다음 함수를 사용하여 조회의 이벤트 프로세서 이름을 지정하십시오.
- 예
다음 예제에서는
eventprocessor104와 연관된 검색 레코드만 검색 결과에 포함됩니다.SELECT processorid,PROCESSORNAME(processorid), LOGSOURCENAME(logsourceid) FROM events GROUP BY logsourceid PARAMETERS REMOTESERVERS=ARIELSERVERS4EPNAME ('eventprocessor104')
PROCESSORNAME
- 용도
- 프로세서 ID로 프로세서의 이름을 리턴합니다.
PROCESSORNAME(processorid)
- 매개변수
프로세서 ID 번호
- 예
SELECT sourceip, PROCESSORNAME(processorid) AS 'Processor Name' FROM events
- 예
SELECT processorid, PROCESSORNAME(processorid) FROM events WHERE processorid=104 GROUP BY processorid LAST 5 MINUTES
PROTOCOLNAME
- 용도
- 프로토콜 ID로 프로토콜의 이름을 리턴합니다.
- 매개변수
프로토콜 ID 번호
- 예
SELECT sourceip, PROTOCOLNAME(protocolid) AS 'Name of protocol' FROM events
QIDNAME
- 용도
QID별로 QID의 이름을 검색합니다.
QIDNAME(qid)
- 매개변수
QID
- 예
SELECT QIDNAME(qid) AS 'My Event Names', qid FROM events
QIDESCRIPTION
- 용도
QID별로 QID 설명을 검색합니다.
QIDDESCRIPTION(qid)
- 매개변수
QID
- 예
SELECT QIDDESCRIPTION(qid) AS 'My_Event_Names', QIDNAME(qid) AS 'QID Name' FROM events
REFERENCEMAP
- 용도
참조 맵에서 키 값을 검색합니다.
ReferenceMap('Value',Key,domainID)domainID는 선택사항이지만 도메인 사용 환경에서는domainID가 제외될 때 검색이 공유 참조 데이터로만 제한됩니다.
- 매개변수
String, String, Integer
- 예
SELECT REFERENCEMAP('Full_name_lookup', username, 5) AS Name_of_User FROM events
REFERENCEMAPSETCONTAINS
- 용도
키에 대한 값이 세트의 참조 맵에 존재하는 경우 도메인에 대해
true를 리턴합니다.REFERENCEMAPSETCONTAINS(MAP_SETS_NAME, KEY, VALUE)
- 매개변수
String, String, String
- 예
ReferenceMapSetContains('RiskyUsersForIps','sourceIP','userName')
REFERENCETABLE
- 용도
- 특정 참조 테이블 콜렉션의 테이블 키로 식별되는 테이블의 컬럼 키 값을 검색합니다.
REFERENCETABLE ('testTable','value','key', domainID) or REFERENCETABLE ('testTable','value','key' domainID)domainID는 선택사항이지만 도메인 사용 환경에서는domainID가 제외될 때 검색이 공유 참조 데이터로만 제한됩니다.
- 매개변수
- String, String, String(또는 IP 주소), Integer
- 예
SELECT REFERENCETABLE('user_data','FullName',username, 5) AS 'Full Name', REFERENCETABLE('user_data','Location',username, 5) AS Location, REFERENCETABLE('user_data','Manager',username, 5) AS Manager FROM events
REFERENCESETCONTAINS
- 용도
값이 특정 참조 세트에 포함된 경우 다음을 리턴합니다.true.
REFERENCESETCONTAINS ('Ref_Set', 'value', domainID)domainID는 선택사항이지만 도메인 사용 환경에서는domainID가 제외될 때 검색이 공유 참조 데이터로만 제한됩니다.
- 매개변수
String, String, Integer
- 예
SELECT ASSETUSER(sourceip, NOW()) AS 'Source Asset User' FROM flows WHERE REFERENCESETCONTAINS('Watchusers', username, 5) GROUP BY "Source Asset User" LAST 24 HOURS
RULENAME
- 용도
전달된 룰 ID를 기반으로 하는 하나 이상의 룰 이름을 리턴합니다.
RULENAME(creeventlist)RULENAME(3453)
- 매개변수
단일 룰 ID 또는 룰 ID의 목록입니다.
- 예
SELECT * FROM events WHERE RULENAME(creEventList) ILIKE '%my rule name%'