Information processing device and determination method
The information processing device uses a Large Language Model to analyze fraudulent websites with reduced training costs and enhanced explainability, addressing the limitations of conventional methods by employing LLMs for tool selection and information collection.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-16
- Publication Date
- 2026-03-26
AI Technical Summary
Conventional methods for detecting sophisticated fraudulent websites require large amounts of training data and labeled samples, leading to high training costs and lack of explainability in machine learning models, making it difficult to accurately identify such sites.
An information processing device utilizing a Large Language Model (LLM) to analyze web content for fraudulent sites, selecting tools for information collection and analysis without additional training, and providing explainable AI outputs.
Reduces training costs and improves accuracy in detecting fraudulent websites by analyzing diverse and sophisticated sites with minimal data, while offering clear explanations for the detection process.
Smart Images

Figure JP2025032548_26032026_PF_FP_ABST
Abstract
Description
Information Processing Apparatus and Determination Method
[0001] The present invention relates to an information processing apparatus and a determination method.
[0002] In recent years, sophisticated fraud sites have diversified, making it difficult to determine whether a site is a fraud site based solely on the visual information of the site, and even security experts often require time to analyze fraud sites.
[0003] As one representative example of such fraud sites, a fake shopping site that conducts fictitious product sales online is known. For example, in a fake shopping site, although it appears to be a legitimate site at first glance, there are cases where it is only recognized as a fraud site when the product ordered by the user does not arrive even after several days.
[0004] Unlike conventional phishing sites, such sophisticated fraud sites do not imitate well-known legitimate services, but instead describe fictitious company information and appear to have legitimate services, making it difficult to immediately determine that they are fraud sites in some cases.
[0005] For example, as one technique for detecting sophisticated fraud sites, a conventional technique has been proposed in which feature quantities such as the characteristics of character strings in a site and the registration information of domain names are used as explanatory variables, and the correct label indicating whether it is a fraud site or not is used as the objective variable to train a machine learning model.
[0006] Platon Kotzias et al., “Scamdog Millionaire: Detecting E-commerce Scams in the Wild”, Annual Computer Security Applications Conference (ACSAC), 2023.Marzieh Bitaab et al.,“BEYOND PHISH: Toward Detecting Fraudulent e-Commerce Websites at Scale”, IEEE Symposium on Security and Privacy (SP), 2023.
[0007] However, the conventional technologies described above have room for improvement in that they require a large amount of training data with correct labels, which increases the training cost of machine learning models in order to detect increasingly sophisticated and diverse fraudulent websites.
[0008] Therefore, the present invention aims to provide an information processing device and a determination method that can reduce the training cost of machine learning models for detecting fraudulent websites.
[0009] To solve the above-mentioned problems and achieve the objective, the information processing device of the present invention includes: a reception unit that accepts the specification of web content; an information collection unit that collects analytical information of the fraudulent site based on a tool output as a result of selecting an action for the task by a first large-scale language model that performs a task of determining whether or not the web content is a fraudulent site; a first model execution unit that repeatedly inputs the analytical information collected by the information collection unit to the first large-scale language model until the execution result of the task is output by the first large-scale language model; and an output unit that outputs the execution result of the task output by the first large-scale language model.
[0010] According to the present invention, the training cost of machine learning models for detecting fraudulent websites can be reduced.
[0011] Figure 1 is a block diagram showing an example of the functional configuration of an information processing device. Figure 2 is a schematic diagram (1) showing an example of the input / output configuration of LLM5A. Figure 3 is a schematic diagram (2) showing an example of the input / output configuration of LLM5A. Figure 4 is a schematic diagram (3) showing an example of the input / output configuration of LLM5A. Figure 5 is a diagram showing an example of a prompt template. Figure 6 is a diagram showing an example of a tool. Figure 7 is a diagram (1) showing an example of information gathering using a tool. Figure 8 is a diagram (2) showing an example of information gathering using a tool. Figure 9 is a diagram (3) showing an example of information gathering using a tool. Figure 10 is a diagram (4) showing an example of information gathering using a tool. Figure 11 is a diagram (5) showing an example of information gathering using a tool. Figure 12 is a diagram (6) showing an example of information gathering using a tool. Figure 13 is a diagram (7) showing an example of information gathering using a tool. Figure 14 is a diagram (8) showing an example of information gathering using a tool. Figure 15 is a diagram (9) showing an example of information gathering using a tool. Figure 16 is a diagram showing an example of how to specify the output format. Figure 17 is a diagram (1) showing an example of the transitions in the analysis process of a fraudulent website. Figure 18 is a diagram (2) showing an example of the transitions in the analysis process of a fraudulent website. Figure 19 is a diagram (3) showing an example of the transitions in the analysis process of a fraudulent website. Figure 20 is a schematic diagram showing an example of the input / output configuration of LLM5B. Figure 21 is a diagram showing an example of a prompt template. Figure 22 is a diagram showing an example of the output of LLM5B. Figure 23 is a flowchart showing the procedure of the judgment process. Figure 24 is a diagram showing an example of the hardware configuration.
[0012] The following describes embodiments for implementing the information processing device and determination method related to this disclosure (hereinafter referred to as "Embodiments") with reference to the attached drawings. It should be noted that these embodiments represent only one example or aspect, and the following description does not limit the structure, operation, function, properties, characteristics, methods, and applications related to this disclosure.
[0013] <Overall Configuration> Figure 1 is a block diagram showing an example of the functional configuration of the information processing device 10. For example, Figure 1 shows an information processing device 10 that provides a determination function to determine whether or not a specified web content is a fraudulent site.
[0014] In one embodiment, the information processing device 10 may be implemented by a server device. For example, the information processing device 10 can provide the above-mentioned determination function as a cloud service by running a PaaS (Platform as a Service) type middleware or a SaaS (Software as a Service) type application.
[0015] As shown in Figure 1, the information processing device 10 can be connected to a user terminal 30 via a network NW for communication. For example, the network NW may be implemented by any type of communication network, such as the Internet or a LAN (Local Area Network), whether wired or wireless.
[0016] The user terminal 30 is a terminal device used by a user who receives the above-mentioned judgment function. The term "user" here may include any person such as an administrative body that oversees electronic commerce, a business that is commissioned by the administrative body to investigate fraudulent websites, or an ordinary consumer. For example, the user terminal 30 may be implemented using any computer, including a personal computer, a smartphone, a tablet, or a wearable device.
[0017] While the above-mentioned judgment function is provided as an example of a cloud service, it is not limited to this. For example, the judgment function may be provided on-premises. Also, while the above-mentioned judgment function is implemented as a client-server system, it is not limited to this. For example, the judgment function may be provided as a standalone service by having an application running on the user terminal 30 execute processing corresponding to the judgment function on the user terminal 30. In this case, the judgment function may be packaged as a function of other software such as a browser.
[0018] <One aspect of the challenge> As explained in the background technology section above, the conventional technology described above has room for improvement in that the training cost of machine learning models increases in order to detect increasingly sophisticated and diverse fraudulent websites, as exemplified below.
[0019] Firstly, in supervised learning, as a general rule, a large number of training samples with correct labels are required for a machine learning model to achieve accuracy. In particular, to detect fraudulent websites with high accuracy, it is necessary to collect a large amount of data on the fraudulent websites to be detected in advance and train the machine learning model with it. Secondly, these fraudulent websites must be assigned correct labels that indicate whether they are fraudulent or not, and if this annotation and labeling is done manually, it requires a lot of time and effort. Thirdly, in order to deal with different types of fraud and different languages, a series of processes such as feature design, training, evaluation, and optimization are required, each specialized for its respective purpose. Further time and effort are required to fine-tune the machine learning models applied in the field in order to continue to capture increasingly diverse and sophisticated fraudulent websites.
[0020] Another aspect of the conventional technologies described above is that they have room for improvement in that the basis for determining whether a site is fraudulent or not using machine learning models is unclear, resulting in what is known as a black box problem.
[0021] Generally speaking, the machine learning models in the conventional technologies described above classify whether a site is a scam site or not through vector operations on the feature space. As a result, it can be unclear what factors led to that judgment. For example, in the explanation of the judgment basis of conventional detection systems, the output results indicate that the number of external links on the site, the number of requests to external domain names, and the country information of the domain name registrant contributed to the judgment. When operating a scam site detection system, if only judgment basis that is difficult for humans to intuitively understand is presented, the reliability of the system decreases, and its application to mission-critical domains is limited.
[0022] <One aspect of the problem-solving approach> Therefore, the judgment function according to this embodiment employs an approach that analyzes multiple types and multiple languages of fraudulent websites with high accuracy without requiring additional learning of fraudulent websites, by inputting the URL (Uniform Resource Locator) to be analyzed.
[0023] In other words, the determination function according to this embodiment causes a Large Language Model (LLM), or LLM, to select a tool for collecting analytical information to be used in the analysis of fraudulent websites, and then performs the collection and analysis of said analytical information.
[0024] In this way, by utilizing LLM's strengths in natural language interpretation, it can recognize elements and contexts that humans perceive as suspicious from the information being analyzed, and determine whether the web content corresponding to the URL being analyzed is a fraudulent site or not.
[0025] Therefore, according to the determination function of this embodiment, fraudulent websites can be detected by an LLM that can execute tasks in zero shots, thus reducing the training cost of the machine learning model that detects fraudulent websites.
[0026] For example, to detect increasingly sophisticated and diverse fraudulent websites, it is not necessary to prepare a large number of training samples with correct labels, and it is not necessary to create and update machine learning models for each type of fraud and language. Furthermore, by allowing LLM itself to decide on the selection of tools to be used for analyzing fraudulent websites and collecting analytical information, even when there is insufficient information, it becomes possible to analyze fraudulent websites from a more multifaceted perspective by analyzing additional external information.
[0027] Furthermore, the determination function according to this embodiment can output to the LLM the determination result of whether the web content corresponding to the URL to be analyzed is a fraudulent site, along with text describing the basis for the determination in natural language. This improves the explainability of the reasoning behind why it is a fraudulent site or not, thereby realizing so-called Explainable AI.
[0028] <Configuration of Information Processing Device 10> Next, the functional configuration of the information processing device 10 that provides the above-mentioned determination function will be described. Figure 1 schematically shows the blocks related to the determination function of the information processing device 10. As shown in Figure 1, the information processing device 10 has a communication control unit 11, a storage unit 13, and a control unit 15. Note that Figure 1 only shows an excerpt of the functional units related to the above-mentioned determination function, and the information processing device 10 may also be equipped with functional units other than those shown.
[0029] The communication control unit 11 is a functional unit that controls communication with other devices such as the user terminal 30. In one embodiment, the communication control unit 11 can be implemented by a network interface card such as a LAN card. In one aspect, the communication control unit 11 receives requests from the user terminal 30 to detect fraudulent websites, or outputs responses to such requests, such as judgment results and the basis for the judgment, to the user terminal 30.
[0030] The storage unit 13 is a functional unit that stores various types of data. In one embodiment, the storage unit 13 may be implemented by internal, external, or auxiliary storage of the information processing device 10. For example, the storage unit 13 stores the tool DB (Database) 13A. The above-mentioned tool DB 13A will be described later in conjunction with the scenes in which the tool DB 13A is referenced or registered.
[0031] The control unit 15 is a functional unit that performs overall control of the information processing device 10. For example, the control unit 15 can be implemented by a hardware processor. As shown in Figure 1, the control unit 15 has a receiving unit 15A, an information collection unit 15B, a first model execution unit 15C, a second model execution unit 15D, and an output unit 15E. The control unit 15 may also be implemented by hardwired logic or the like.
[0032] The reception unit 15A is a processing unit that receives various types of information from the user terminal 30. In one embodiment, the reception unit 15A can receive a request from the user terminal 30 to detect a fraudulent website. When receiving such a request, the reception unit 15A can allow the user to specify the web content to be analyzed. For example, the user can be asked to input a URL that identifies the web content, or to select one or more items from a list containing web content and their URLs.
[0033] The information gathering unit 15B is a processing unit that collects information for analyzing fraudulent websites using multiple tools stored in the tool database 13A. In one embodiment, the information gathering unit 15B inputs the arguments that LLM 5A outputs as input to the tool to the tool corresponding to the tool name output by LLM 5A, which is one of the multiple tools stored in the tool database 13A. As a result, the information gathering unit 15B causes the tool selected by LLM 5A to collect information for analyzing fraudulent websites.
[0034] The first model execution unit 15C is a processing unit that performs input / output control for the LLM 5A. In one embodiment, the LLM 5A is a large-scale language model that performs the task of determining whether or not the web content corresponding to the URL to be analyzed is a fraudulent site. For example, the LLM 5A may correspond to an example of the first large-scale language model.
[0035] Here, the first model execution unit 15C repeatedly inputs prompts to LLM5A until LLM5A outputs the execution result of the task, for example, the final answer. At this time, the input to LLM5A or the output from LLM5A differs among the three patterns: the first round, the second round and beyond, and the final round.
[0036] Figures 2 to 4 are schematic diagrams (1) to (3) showing examples of input / output configurations for the LLM5A. For example, Figure 2 schematically illustrates the input / output control to the LLM5A in the first round, Figure 3 schematically illustrates the input / output control to the LLM5A from the second round onward, and Figure 4 schematically illustrates the input / output control to the LLM5A in the final round.
[0037] For example, in the first round, the first model execution unit 15C inputs a prompt 20 to the LLM 5A, as shown in Figure 2, which contains the URL designated as the target of analysis in the request received by the reception unit 15A. Here, "prompt" refers to information input to the LLM in order to help the LLM generate an appropriate response or output for a specific task or instruction. Upon receiving the prompt 20 in this way, the LLM 5A outputs an action obtained as a result of thinking in the first round as an intermediate output. As an example of such an action, the LLM 5A outputs the name of the tool used to analyze the fraudulent website and the input to that tool.
[0038] Next, in rounds t and beyond, the first model execution unit 15C inputs a prompt 20 to LLM5A, as shown in Figure 3. This prompt 20 contains the URL to be analyzed, the analysis process of LLM5A's thoughts and actions up to round t-1, and the observation results of round t-1, i.e., the information collected by the information collection unit 15B in round t-1. Upon receiving the prompt 20 in this way, LLM5A outputs the actions obtained as a result of its thinking in round t as an intermediate output. As an example of such actions, LLM5A outputs the name of the tool used to analyze fraudulent websites and the input to that tool.
[0039] Finally, in the final round, round t, the first model execution unit 15C inputs a prompt 20 to LLM5A, as shown in Figure 4. This prompt 20 contains the URL to be analyzed, the analysis process of LLM5A's thoughts and actions up to round t-1, and the information collected by the information collection unit 15B in round t-1. Upon receiving the prompt 20, LLM5A outputs a final answer as an example of the task execution result, which is the final output. This final answer includes the determination of whether the site is fraudulent or not, and the basis for that determination.
[0040] Figure 5 shows an example of a prompt template. Figure 5 shows an excerpt of the prompt 20 template. As shown in Figure 5, the prompt 20 template may include, as an example, elements for role setting 21, fraud site characteristics 22, tool definition 23, decision-making format 24, fraud site analysis request 25, and analysis process 26.
[0041] Among these, element 21 of the role setting includes a role for LLM5A that performs the task of determining whether or not the URL to be analyzed is a fraudulent site.
[0042] Element 22 of the characteristics of a fraudulent website describes the characteristics of a fraudulent website that serve as the basis for determining whether or not the URL being analyzed is a fraudulent website. For example, in the example shown in Figure 5, a total of nine types of characteristics are described, including characteristics that include context that guides users to content within the website, and characteristics that include information that is inappropriate for a website of a legitimate service.
[0043] Element 23 of the tool definition defines the tools that LLM5A uses to collect analytical information for analyzing fraudulent websites. For example, as shown in Figure 5, the names of the tools available to LLM5A and how to use them are defined. Using these tool definitions, LLM5A determines which tools to use and which information to input into the selected tools.
[0044] In the element 24 of the decision-making form, the text in which the thinking and actions of the LLM 5A are verbalized according to ReACT (Reasoning and ACTing) is described. Here, "ReACT" refers to prompt engineering that describes a series of processes including "Action" to the external environment for task execution, "Observation" of the results caused by the action, and "Thought" about the observation. For example, in the example shown in FIG. 5, in order to answer a given question (Question), think about what to do next (Thought), extract the tool selection (Action) and the input to the tool (Action Input) for the next analysis, and analyze again whether the given question (Question) can be answered (Final Answer) based on the information collection result (Observation) from the tool. By repeating this series of processing flows, it becomes possible to collect and analyze the information necessary and sufficient for the analysis of fraud sites, and fraud sites can be detected with higher accuracy.
[0045] In the element 25 of the fraud site analysis request, the analysis request to the LLM 5A for the URL to be analyzed is described. In the element 26 of the analysis process, the analysis process executed in the past using ReACT is described. Thus, by including the history of the past analysis process in the prompt, continuous fraud site analysis becomes possible.
[0046] Here, in FIG. 5, as an example of the element 23 of the tool definition, the definitions of two tools are shown in a simplified manner, but a variety of tools can be defined. Just as an example, the tool defined in FIG. 6 can also be defined in the element 23 of the tool definition.
[0047] FIG. 6 is a diagram showing an example of a tool. As shown in FIG. 6, as examples of tools to be used for the LLM 5A, six tool types, namely, "Web Content", "Search Engine", "Social Media", "WHOIS", "DNS Lookup", and "TLS Certificate", are illustrated. For example, the tool type "Web Content" may include tools such as "Access URL", "Extract Text", and "Extract Hyperlink". Also, the tool type "Search Engine" may include tools such as "Get Search Result". Furthermore, the tool type "Social Media" may include tools such as "Search SNS" and "Search Reddit". Also, the tool type "WHOIS" may include tools such as "Retrieve WHOIS". Furthermore, the tool type "DNS Lookup" may include tools such as "Retrieve DNS Record". Also, the tool type "TLS Certificate" may include tools such as "Retrieve Certificate". By defining the tool name and the description of each of these tools in the tool definition element 23, the LLM 5A can be made to use the tools illustrated in FIG. 6.
[0048] FIGS. 7 to 15 are diagrams (1) to (9) showing an example of information collection using a tool. For example, FIG. 7 shows an example in which the LLM 5A outputs Action "Access URL" and Action Input "https: / / example.com / ". In this case, the information collection unit 15B can obtain the execution result of the tool "Access URL" shown in FIG. 7 by inputting the argument "https: / / example.com / " to the tool "Access URL". By using the tool "Access URL" in this way, the status code when accessing the URL specified by the LLM 5A can be obtained.
[0049] Figure 8 shows an example where LLM5A outputs Action "Extract Text" and Action Input "https: / / example.com / ". In this case, the information gathering unit 15B can obtain the execution result of the tool "Extract Text" shown in Figure 8 by inputting the argument "https: / / example.com / " to the tool "Extract Text". By using the tool "Extract Text" in this way, the text contained in the HTML source of the web page accessed when the URL specified by LLM5A is accessed can be obtained.
[0050] Figure 9 shows an example where LLM5A outputs Action "Extract Hyperlink" and Action Input "https: / / example.com / ". In this case, the information gathering unit 15B can obtain the execution result of the tool "Extract Hyperlink" shown in Figure 9 by inputting the argument "https: / / example.com / " to the tool "Extract Hyperlink". By using the tool "Extract Hyperlink" in this way, the hyperlink and text of the a tag contained in the HTML source of the web page when accessing the URL specified by LLM5A can be obtained.
[0051] Figure 10 shows an example where LLM5A outputs Action “Get Search Result” and Action Input “example.com scam review”. In this case, the information gathering unit 15B can obtain the execution result of the tool “Get Search Result” shown in Figure 10 by inputting the argument “example.com scam review” into the tool “Get Search Result”, which uses APIs (Application Programming Interfaces) provided by various search engine suppliers. By using the tool “Get Search Result” in this way, a list of search engine results corresponding to the search query when accessing the URL specified by LLM5A can be obtained.
[0052] Figure 11 shows an example where LLM5A outputs Action “Search SNS” and Action Input “example.com scam review”. In this case, the information gathering unit 15B can obtain the execution result of the tool “Search SNS” shown in Figure 11 by inputting the argument “example.com scam review” into the tool “Search SNS”, which uses APIs provided by various SNS suppliers. By using the tool “Search SNS” in this way, a list of search results for SNS posts corresponding to the search query specified by LLM5A can be obtained.
[0053] Figure 12 shows an example where LLM5A outputs Action “Get Search Result” and Action Input “example.com scam review”. In this case, the information gathering unit 15B can obtain the execution result of the tool “Get Search Result” shown in Figure 12 by inputting the argument “example.com scam review” into the tool “Get Search Result”, which uses APIs provided by various search engine suppliers. By using the tool “Get Search Result” in this way, a list of search results for SNS posts corresponding to the search query specified by LLM5A can be obtained.
[0054] Figure 13 shows an example where LLM5A outputs Action "Retrieve WHOIS" and Action Input "example.com". In this case, the information collection unit 15B can obtain the execution result of the tool "Retrieve WHOIS" shown in Figure 13 by inputting the argument "example.com" to the tool "Retrieve WHOIS". By using the tool "Retrieve WHOIS" in this way, WHOIS information corresponding to the domain name specified by LLM5A can be obtained.
[0055] Figure 14 shows an example where LLM5A outputs Action "Retrieve DNS Record" and Action Input "example.com". In this case, the information gathering unit 15B can obtain the execution result of the tool "Retrieve DNS Record" shown in Figure 14 by inputting the argument "example.com" to the tool "Retrieve DNS Record", which executes the open-source OS kernel's dig (domain information groper) command. By using the tool "Retrieve DNS Record" in this way, the query results to the DNS server corresponding to the domain name specified by LLM5A can be obtained.
[0056] Figure 15 shows an example where LLM5A outputs Action "Retrieve Certificate" and Action Input "example.com". In this case, the information collection unit 15B can obtain the execution result of the tool "Retrieve Certificate" shown in Figure 15 by inputting the argument "example.com" to the tool "Retrieve Certificate". By using the tool "Retrieve Certificate" in this way, certificate information corresponding to the domain name specified by LLM5A can be obtained.
[0057] As a result of repeatedly collecting and analyzing analytical information using these tools, LLM5A outputs the final output, which is the task execution result, i.e., the determination result of whether or not the web content corresponding to the URL to be analyzed is a fraudulent site, as the final answer.
[0058] Such file answers are output according to the output format specification embedded in prompt 20. Figure 16 shows an example of how to specify the output format. Figure 16 shows an example of an instruction statement for specifying the output format of LLM5A. For example, in the example shown in Figure 16, there is an instruction to output LLM5A in JSON format and an instruction to include three key-value pairs, “result”, “scam type”, and “reason”, in the final answer output by LLM5A. Of these, “result” refers to the result of the determination of whether the web content corresponding to the URL to be analyzed is a fraudulent site or not. Also, “scam type” refers to the type of fraudulent site, such as a fake shopping site. Also, “reason” refers to the basis for the determination of whether it is a fraudulent site or not. For example, there is an instruction that answers the determination of whether the web content is a fraudulent site or not based on the characteristics of a fraudulent site described in element 22. By specifying this output format, LLM5A can output the judgment result, the type of fraudulent website, and the basis for the judgment as the final answer.
[0059] Figures 17 to 19 are diagrams (1) to (3) showing examples of the transitions in the analysis process of fraudulent websites. Figures 17 to 19 show the transitions of the analysis process of fraudulent websites by ReAct, R1 to R9, from the first round to the final round, the ninth round, in chronological order.
[0060] As shown in Figure 17, in the first round of analysis process R1, from the perspective of realizing the idea of examining the company information, product offerings, contact information, privacy policy, payment methods, and freshness of the information provided in the web content identified by the URL "https: / / suspicious.example / ", an action was taken to obtain the status code when accessing the URL "https: / / suspicious.example / ", resulting in the return of status code 200.
[0061] In the second round of analysis, R2, after confirming the online activity of the target website, the process involves obtaining text from the target website's content to check for characteristics of a fraudulent site, such as unusually low prices or advertisements for free products.
[0062] In the third round of analysis (R3), as a result of the actions in the second round, the text obtained from the web content being analyzed contains indications of an unusually low-priced sale. However, since such a sale alone can also be conducted in legitimate businesses, it cannot be definitively concluded to be fraudulent. Therefore, the thought process involves checking company information, contact details, and privacy policy. Based on this thought process, the action of extracting hyperlinks contained in the web content being analyzed is performed.
[0063] In the fourth round of analysis (R4), as a result of the actions taken in the third round, hyperlinks obtained from the target web content can be identified, including typical e-commerce product hyperlinks and even hyperlinks to privacy policies. Therefore, the thought process involves proceeding to verify company information, contact details, and the actual privacy policy. Based on this thinking, the action of obtaining WHOIS information from the target website is carried out.
[0064] As shown in Figure 18, in the fifth round of analysis (R5), the WHOIS information of the website under analysis, obtained as a result of the actions in the fourth round, contains signs that the domain owner is trying to conceal their identity. However, this alone is insufficient to determine that it is a fraudulent site, so the thought process proceeds to check the privacy policy and whether the privacy of customer information is ambiguous. Based on this thought process, the action of accessing the hyperlink to the privacy policy of the website under analysis is performed.
[0065] In the sixth round of analysis (R6), since status code 200 was obtained as a result of the actions in the fifth round, it was confirmed that the privacy policy of the website being analyzed could be accessed. Therefore, the thinking process proceeded to evaluate the clarity and comprehensiveness of the information regarding customer privacy from the privacy policy webpage. Based on this thinking, the action of extracting text from the privacy policy webpage was carried out.
[0066] In the seventh round of analysis (R7), the analysis process involves the observation that the privacy policy text obtained as a result of the actions in the sixth round shows signs of template use and insufficient customization, leading to the conclusion that customer information privacy may be ambiguous. This leads to the next step in the analysis: checking the contact information of the website being analyzed. Based on this reasoning, the action of accessing the hyperlink to the contact information on the website being analyzed is performed.
[0067] In the eighth round of analysis (R8), since status code 200 was obtained as a result of the actions in the seventh round, it was confirmed that contact information on the target website could be accessed. Therefore, the thought process proceeded to investigate the actual contact information from the contact information web page. Based on this thought process, the action of extracting text from the contact information web page was executed.
[0068] In the ninth round of analysis (R9), the analysis concluded that the contact information obtained as a result of the actions in the eighth round lacked detailed contact information such as a phone number, address, and email address, making it unsuitable for legitimate business. This supported another characteristic of fraudulent websites: inappropriate contact phone numbers and email addresses for business use. Furthermore, in the ninth round of analysis (R9), the evidence obtained up to the ninth round led to the final conclusion that the web content identified by the URL "https: / / suspicious.example / " is a fraudulent website. As a result, the judgment result value was output as "true," indicating that it is a fraudulent website. Additionally, the type of fraudulent website was output as a fake online shopping website. Furthermore, the basis for the judgment was output as corresponding to features 1, 6, 7, and 9 described in element 22 of the fraudulent website characteristics.
[0069] Based on the above, it is possible to determine whether a specified web content is a scam site or not by recognizing elements and contexts that a professional analyst would find suspicious, following the logic of thought employed by professional analysts. Furthermore, since the basis for the determination of whether or not a web content is a scam site is based on the characteristics of a scam site, the reasoning behind why it is a scam site or not can be presented in a way that is easy for humans to understand.
[0070] Returning to the explanation of Figure 1, the second model execution unit 15D is a processing unit that performs input / output control for LLM5B. In one embodiment, LLM5B is a large-scale language model that performs the task of evaluating the explainability of LLM5A. For example, LLM5B may correspond to an example of the second large-scale language model. Note that LLM5A and LLM5B may be the same large-scale language model, or they may be implemented by different large-scale language models.
[0071] Figure 20 is a schematic diagram showing an example of the input / output configuration of LLM5B. As shown in Figure 20, the second model execution unit 15D inputs a prompt 40 to LLM5B that contains the analysis process up to the output of the final round of LLM5A, for example, the output of the final answer. Upon receiving the prompt 40 in this way, LLM5B outputs the explainability evaluation result of LLM5A.
[0072] Figure 21 shows an example of a prompt template. Figure 21 shows an excerpt of the prompt 40 template. As shown in Figure 21, the prompt 40 template may include, as an example, elements for role setting 41, evaluation criteria setting 42, condition setting 43, example description 44, and evaluation request 45.
[0073] Of these, element 41 of the role setting includes a role for LLM5B that involves performing the task of evaluating whether the answers given to LLM5A are valid.
[0074] Element 42 of the evaluation criteria setting defines an index that indicates whether the evaluation of the explainability of the basis for determining a fraudulent site follows an appropriate thought process based on the context. For example, in the example shown in Figure 21, five levels of indicators are provided, in descending order of evaluation: "Very good," "Good," "Okay," "Somewhat bad," and "Very bad." A standard is defined to be assigned to each of these five levels of indicators.
[0075] The condition setting element 43 defines the conditions for the thought process (THOUGHT) and context (CONTEXT) included in the input to LLM5B. For example, the condition setting element 43 may contain an instruction to extract the concatenated part of the string THOUGHT in ReACT. As an example, when the analysis processes R1 to R9 of LLM5A shown in Figures 17 to 19 are input, the strings written in the THOUGHT column are extracted for each analysis process R1 to R9, and the strings extracted for each analysis process R1 to R9 are concatenated. Furthermore, the condition setting element 43 may contain the fraud site characteristics element 22 shown in Figure 5.
[0076] Element 44 of the example description describes examples of input and output combinations for LLM5B, from the perspective of realizing Few-Shot prompting as a reference for the evaluation criteria of LLM5B. Element 45 of the evaluation request describes the request for analysis to LLM5B using the output of LLM5A to be evaluated.
[0077] Figure 22 shows an example of LLM5B output. For example, in the example shown in Figure 22, the fourth index from the top, "Somewhat bad," is output as the explainability evaluation result of LLM5A. Although Figure 22 shows an example where a five-level index is output as the evaluation result, it is not limited to levels that represent the level of evaluation in stages; other scores, such as numerical values, may also be output.
[0078] Returning to the explanation of Figure 1, the output unit 15E is a processing unit that performs output control to the outside. The term "output" here may include not only display output and audio output, but also print output. Furthermore, the destination of the information output is not limited to external terminal devices such as the user terminal 30, but may also be backend services or applications.
[0079] In one embodiment, when a final answer is output by LLM 5A, the output unit 15E can output at least one of the outputs of LLM 5A, such as the judgment result, the type of fraudulent site, and the basis for the judgment, to the user terminal 30. In addition to such an output of LLM 5A, the output unit 15E can also output the output of LLM 5B, such as the explainability evaluation result of LLM 5A, to the user terminal 30.
[0080] <Processing Flow> Figure 23 is a flowchart showing the procedure for the judgment process. This process can be started as an example when a request for detection of a fraudulent website is received from the user terminal 30.
[0081] As shown in Figure 23, when a request to detect a fraudulent website is received from the user terminal 30 (step S101), the first model execution unit 15C embeds the URL specified as the target of analysis in the request received in step S101 into the fraudulent website analysis request element 25 of the prompt 20 template (step S102).
[0082] Subsequently, the first model execution unit 15C inputs the prompt 20 generated as a result of step S102 to the LLM 5A (step S103). This provides the output of the LLM 5A with the prompt 20 input.
[0083] In this case, if the output of LLM5A does not include the final answer (step S104 No), the information gathering unit 15B selects a tool corresponding to the Action included in the output of LLM5A (step S105).
[0084] Next, the information gathering unit 15B performs information gathering by inputting the arguments corresponding to the Action Input included in the output of LLM 5A to the tool selected in step S105 (step S106).
[0085] Then, the first model execution unit 15C embeds the history of the analysis process previously output by LLM 5A and the information collection results in step S106, i.e., the observation results, into the analysis process elements 26 of the prompt 20 template (step S107).
[0086] Then, the first model execution unit 15C inputs the prompt 20 generated as a result of step S107 to the LLM 5A (step S103).
[0087] Subsequently, the process from step S103 to step S107 described above is repeated until the output of LLM5A contains the final answer (step S104 No).
[0088] Then, if the output of LLM5A includes the final answer (step S104 Yes), the second model execution unit 15D embeds the output of the final round of LLM5A, for example, the analysis process up to the output of the final answer, into LLM5B (step S108).
[0089] Next, the second model execution unit 15D inputs the prompt 40 generated as a result of step S108 to the LLM 5B (step S109). This provides the output of the LLM 5B with the prompt 40 input.
[0090] Subsequently, the output unit 15E outputs the output of LLM 5A, for example, the judgment result, the type of fraudulent site and the basis for the judgment, and the output of LLM 5B, for example, the explanationability evaluation of LLM 5A (step S110), and terminates the process.
[0091] <Summary> As described above, the information processing device 10 according to this embodiment receives a request for a web content, and collects information for analyzing fraudulent sites based on a tool output as a result of selecting an action for the task by the LLM 5A, which performs a task to determine whether or not the web content is a fraudulent site. The information for analysis is repeatedly input to the LLM 5A until the LLM 5A outputs the task execution result, and the LLM 5A outputs the task execution result.
[0092] Therefore, according to the information processing device 10 in this embodiment, fraudulent websites can be detected by LLM, which can execute tasks in zero shots, thus reducing the training cost of the machine learning model that detects fraudulent websites.
[0093] <Exhibition of Creative Ability> The details described in this embodiment, such as specific examples like prompt 20, prompt 40, the output of LLM5A, the output of LLM5B, and the types of LLM5A and LLM5B, are merely examples and can be changed. Furthermore, the flowchart described in this embodiment can also be modified, with changes to the order of processing or skipping some processes, as long as they are consistent.
[0094] <System> The processing procedures, control procedures, specific names, and information including various data and parameters shown in the above document and drawings can be changed at will unless otherwise specified. For example, one or more of the functions of the information processing device 10, such as the reception unit 15A, information collection unit 15B, first model execution unit 15C, second model execution unit 15D, and output unit 15E, may be configured as separate devices.
[0095] Furthermore, the components of each illustrated device are functionally conceptual and do not necessarily need to be physically configured as shown. In other words, the specific forms of distribution and integration of each device are not limited to those shown. That is, all or part of them can be functionally or physically distributed and integrated in any units according to various loads and usage conditions. Note that each configuration may also be a physical configuration.
[0096] Furthermore, the processing performed by the illustrated apparatus can be implemented, in whole or in part, by a program executed by a hardware processor such as an MPU (Micro-Processing Unit) or CPU (Central Processing Unit), or by hardware using wired logic.
[0097] <Hardware> Next, an example of the hardware configuration of the information processing device 10 described in this embodiment will be explained. For example, it can be implemented by installing a program that realizes the functions of the information processing device 10 on a computer. For example, by having the computer run the above program, which is provided as packaged software or online software, the computer can be made to function as the information processing device 10. The computer referred to here includes desktop or notebook personal computers, rack-mounted server computers, etc. In addition, the computer category also includes smartphones, mobile phones and PHS (Personal Handyphone System) and other mobile communication terminals, as well as PDAs (Personal Digital Assistants). Furthermore, the functions of the information processing device 10 may be implemented on a cloud server.
[0098] An example of a computer that executes the above program (decision program) will be explained using Figure 24. As shown in Figure 24, the computer 1000 has, for example, a memory 1010, a CPU 1020, a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These components are connected by a bus 1080.
[0099] Memory 1010 includes ROM (Read Only Memory) 1011 and RAM (Random Access Memory) 1012. ROM 1011 stores, for example, a boot program such as BIOS (Basic Input Output System). The hard disk drive interface 1030 is connected to the hard disk drive 1090. The disk drive interface 1040 is connected to the disk drive 1100. The disk drive 1100 is used to insert a removable storage medium, such as a magnetic disk or an optical disk. The serial port interface 1050 is used to connect, for example, a mouse 1110 and a keyboard 1120. The video adapter 1060 is used to connect, for example, a display 1130.
[0100] Here, as shown in Figure 24, the hard disk drive 1090 stores, for example, the OS 1091, the application program 1092, the program module 1093, and the program data 1094. The storage unit 13 described in the above embodiment is equipped, for example, in the hard disk drive 1090 or the memory 1010.
[0101] Then, the CPU 1020 reads the program module 1093 and program data 1094 stored in the hard disk drive 1090 into the RAM 1012 as needed and executes the above-described procedures.
[0102] Furthermore, the program module 1093 and program data 1094 related to the above-mentioned determination program are not limited to being stored in the hard disk drive 1090, but may also be stored in a removable storage medium and read by the CPU 1020 via a disk drive 1100 or the like. Alternatively, the program module 1093 and program data 1094 related to the above-mentioned program may be stored in another computer connected via a network such as a LAN or WAN (Wide Area Network) and read by the CPU 1020 via a network interface 1070.
[0103] 10 Information processing device 11 Communication control unit 13 Storage unit 13A Tool DB 15 Control unit 15A Reception unit 15B Information collection unit 15C First model execution unit 15D Second model execution unit 15E Output unit 30 User terminal
Claims
1. An information processing device comprising: a reception unit that accepts the specification of web content; an information collection unit that collects analytical information of the fraudulent site based on a tool output as a result of selecting an action for the task by a first large-scale language model that performs a task of determining whether or not the web content is a fraudulent site; a first model execution unit that repeatedly inputs the analytical information collected by the information collection unit to the first large-scale language model until the execution result of the task is output by the first large-scale language model; and an output unit that outputs the execution result of the task output by the first large-scale language model.
2. The information processing device according to claim 1, characterized in that the first model execution unit inputs a prompt to the first large-scale language model, which includes a context element describing the characteristics of the fraudulent site and an instruction element that provides a basis for determining whether or not the web content is a fraudulent site based on the characteristics of the fraudulent site.
3. The information processing apparatus according to claim 2, further comprising a second model execution unit that inputs the basis for the determination output by the first large-scale language model to a second large-scale language model that evaluates the explainability of the first large-scale language model based on the degree of agreement between the characteristics of the fraudulent site included in the elements of the context and the basis for the determination, wherein the output unit further outputs the evaluation result output by the second large-scale language model.
4. A determination method executed by an information processing device, comprising: a reception step of receiving a specification of web content; an information collection step of collecting analytical information of a fraudulent site based on a tool output as a result of selecting an action for a task by a first large-scale language model that performs a task of determining whether or not the web content is a fraudulent site; a first model execution step of repeatedly inputting the analytical information collected by the information collection step into the first large-scale language model until the execution result of the task is output by the first large-scale language model; and an output step of outputting the execution result of the task output by the first large-scale language model.