JP7058302B2 - アプリケーション・プログラムのための脆弱性により起動されるハイブリッド・テストシステム - Google Patents
アプリケーション・プログラムのための脆弱性により起動されるハイブリッド・テストシステム Download PDFInfo
- Publication number
- JP7058302B2 JP7058302B2 JP2020100093A JP2020100093A JP7058302B2 JP 7058302 B2 JP7058302 B2 JP 7058302B2 JP 2020100093 A JP2020100093 A JP 2020100093A JP 2020100093 A JP2020100093 A JP 2020100093A JP 7058302 B2 JP7058302 B2 JP 7058302B2
- Authority
- JP
- Japan
- Prior art keywords
- vulnerability
- seed
- inputs
- seed inputs
- concoric
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3696—Methods or tools to render software testable
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/563—Static detection by source code analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3624—Software debugging by performing operations on the source code, e.g. via a compiler
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3676—Test management for coverage analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/43—Checking; Contextual analysis
- G06F8/433—Dependency analysis; Data or control flow analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Description
Claims (21)
- プログラムコードの脆弱性を評価するためのコンピュータで実装される方法であって、
コンパイラによってソースコードに基づいて生成された中間結果を受け取るステップであって、前記中間結果が、前記ソースコードの潜在的に脆弱な1または複数のラインを指示する1または複数の脆弱性インジケータを含むステップと、
前記中間結果から生成された第1の実行可能コードに対してグレーボックス・ファジング処理を遂行して、シード入力の第1のセットを生成するステップと、
到達可能であるが前記グレーボックス・ファジング処理によって調査されていない前記ソースコードの前記ラインに関する前記脆弱性インジケータに基づいて、前記第1のセットの前記シード入力の各々について脆弱性スコアを計算するステップと、
前記第1のセットにおける前記シード入力のうち最高の脆弱性スコアを有する1つを選択するステップと、
前記選択されたシード入力を優先権として使用して、前記中間結果から生成された第2の実行可能コードに対して遂行されるコンコリック実行を遂行するステップとを含む方法。 - 前記コンコリック実行がシード入力の第2のセットを生成し、シード入力の前記第2のセットにより、前記コンコリック実行のプログラムフロー制御が、前記グレーボックス・ファジング処理によって調査されていない前記ソースコードの1または複数の分岐を調査する請求項1に記載の方法。
- 次の繰り返しの間に前記グレーボックス・ファジング処理によって前記第2のセットの1または複数のシード入力が利用されるように、シード入力の前記第1のセットに対してシード入力の前記第2のセットを付加するステップを含む請求項2に記載の方法。
- 前記第1のセットのシード入力の各々について脆弱性スコアを計算するステップが、
前記シード入力に対応する前記グレーボックス・ファジング処理によって調査されたプログラム制御フローを識別するステップと、
該プログラム制御フローによって到達可能であるが前記グレーボックス・ファジング処理によって調査されていない複数の脆弱性インジケータに基づいて、前記シード入力に関する前記脆弱性スコアを計算するステップと、
を含む請求項1に記載の方法。 - 前記第1のセットの前記シード入力のうち最高の脆弱性スコアを有する1つを選択するステップが、シード入力の前記第1のセットに対する前記コンコリック実行に優先権を与えるように、前記第1のセットの前記シード入力をそれぞれの脆弱性スコアに基づいて並べるステップを含む、請求項1に記載の方法。
- 前記中間結果からコードの複数の基本ブロックを識別するステップと、
前記基本ブロックの各々について、該基本ブロックの内部の複数の脆弱性インジケータを判定するステップと、
前記基本ブロックに関連した複数の脆弱性インジケータに対して各基本ブロックのブロック識別子(ID)をマッピングするマッピング表を生成するステップであって、前記マッピング表が脆弱性スコアを計算するために利用されるステップと、
を含む請求項1に記載の方法。 - 前記第1のセットの前記シード入力の各々について脆弱性スコアを計算するステップが、
前記シード入力に対応する前記中間結果のプログラム制御フローに基づいて、プログラム制御フローグラフ(CFG)を構築するステップと、
前記シード入力の前記脆弱性スコアを表すために、前記プログラムCFGによって到達可能であるが調査されていないすべての基本ブロックの脆弱性インジケータの数を合計するステップであって、前記マッピング表におけるルックアップ演算を遂行して、前記基本ブロックに関連した複数の脆弱性インジケータを判定することを含むステップと、
を含む請求項6に記載の方法。 - 前記脆弱性インジケータのうち少なくとも1つが、前記コンパイラによって挿入された、例外のスローおよびキャッチ(スロー/キャッチ)のブロックを含み、ソースコードの関連するラインが実行中に安全規則に違反したとき、オペレーティングシステムによって、例外がスローされキャッチされる請求項1に記載の方法。
- 命令を記憶した非一時的マシン可読媒体であって、前記命令がプロセッサによって実行されたとき、該プロセッサが、
コンパイラによってソースコードに基づいて生成された中間結果を受け取るステップであって、前記中間結果が、前記ソースコードの潜在的に脆弱な1または複数のラインを指示する1または複数の脆弱性インジケータを含むステップと、
前記中間結果から生成された第1の実行可能コードに対してグレーボックス・ファジング処理を遂行して、シード入力の第1のセットを生成するステップと、
到達可能であるが前記グレーボックス・ファジング処理によって調査されていない前記ソースコードの前記ラインに関する前記脆弱性インジケータに基づいて、前記第1のセットの前記シード入力の各々について脆弱性スコアを計算するステップと、
前記第1のセットにおける前記シード入力のうち最高の脆弱性スコアを有する1つを選択するステップと、
前記選択されたシード入力を優先権として使用して、前記中間結果から生成された第2の実行可能コードに対して遂行されるコンコリック実行を遂行するステップと、
を含む動作を遂行する非一時的マシン可読媒体。 - 前記コンコリック実行がシード入力の第2のセットを生成し、シード入力の前記第2のセットにより、前記コンコリック実行のプログラムフロー制御が、前記グレーボックス・ファジング処理によって調査されていない前記ソースコードの1または複数の分岐を調査する請求項9に記載の非一時的マシン可読媒体。
- 前記動作が、次の繰り返しの間に前記グレーボックス・ファジング処理によって前記第2のセットの1または複数のシード入力が利用されるように、シード入力の前記第1のセットに対してシード入力の前記第2のセットを付加するステップを含む請求項10に記載の非一時的マシン可読媒体。
- 前記第1のセットの前記シード入力の各々について脆弱性スコアを計算するステップが、
前記シード入力に対応する前記グレーボックス・ファジング処理によって調査されたプログラム制御フローを識別するステップと、
前記プログラム制御フローによって到達可能であるが前記グレーボックス・ファジング処理によって調査されていない複数の脆弱性インジケータに基づいて、前記シード入力に関する前記脆弱性スコアを計算するステップと、
を含む請求項9に記載の非一時的マシン可読媒体。 - 前記第1のセットの前記シード入力のうち最高の脆弱性スコアを有する1つを選択するステップが、シード入力の前記第1のセットに対する前記コンコリック実行に優先権を与えるように、前記第1のセットの前記シード入力をそれぞれの脆弱性スコアに基づいて並べるステップを含む請求項9に記載の非一時的マシン可読媒体。
- 前記動作が、
前記中間結果からコードの複数の基本ブロックを識別するステップと、
前記基本ブロックの各々について、該基本ブロックの内部の複数の脆弱性インジケータを判定するステップと、
前記基本ブロックに関連した複数の脆弱性インジケータに対して各基本ブロックのブロック識別子(ID)をマッピングするマッピング表を生成するステップであって、前記マッピング表が脆弱性スコアを計算するために利用されるステップと、
を含む請求項9に記載の非一時的マシン可読媒体。 - 前記第1のセットの前記シード入力の各々について脆弱性スコアを計算するステップが、
前記シード入力に対応する前記中間結果のプログラム制御フローに基づいて、プログラム制御フローグラフ(CFG)を構築するステップと、
前記シード入力の前記脆弱性スコアを表すために、前記プログラムCFGによって到達可能であるが調査されていないすべての基本ブロックの脆弱性インジケータの数を合計するステップであって、前記マッピング表におけるルックアップ演算を遂行して、前記基本ブロックに関連した複数の脆弱性インジケータを判定することを含むステップと、
を含む請求項14に記載の非一時的マシン可読媒体。 - 前記脆弱性インジケータのうち少なくとも1つが、前記コンパイラによって挿入された、例外のスローおよびキャッチ(スロー/キャッチ)のブロックを含み、ソースコードの関連するラインが実行中に安全規則に違反したとき、オペレーティングシステムによって、例外がスローされキャッチされる請求項9に記載の非一時的マシン可読媒体。
- プロセッサと、命令を記憶するために該プロセッサに結合されたメモリとを備えるデータ処理システムであって、前記命令が前記プロセッサによって実行されたとき、該プロセッサが、
コンパイラによってソースコードに基づいて生成された中間結果を受け取るステップであって、前記中間結果が、前記ソースコードの潜在的に脆弱な1または複数のラインを指示する1または複数の脆弱性インジケータを含むステップと、
前記中間結果から生成された第1の実行可能コードに対してグレーボックス・ファジング処理を遂行して、シード入力の第1のセットを生成するステップと、
到達可能であるが前記グレーボックス・ファジング処理によって調査されていない前記ソースコードの前記ラインに関する前記脆弱性インジケータに基づいて、前記第1のセットの前記シード入力の各々について脆弱性スコアを計算するステップと、
前記第1のセットにおける前記シード入力のうち最高の脆弱性スコアを有する1つを選択するステップと、
前記選択されたシード入力を優先権として使用して、前記中間結果から生成された第2の実行可能コードに対して遂行されるコンコリック実行を遂行するステップと、
を含む動作を遂行するデータ処理システム。 - 前記コンコリック実行がシード入力の第2のセットを生成し、シード入力の前記第2のセットにより、前記コンコリック実行のプログラムフロー制御が、前記グレーボックス・ファジング処理によって調査されていない前記ソースコードの1または複数の分岐を調査する請求項17に記載のシステム。
- 前記動作が、次の繰り返しの間に前記グレーボックス・ファジング処理によって前記第2のセットの1または複数のシード入力が利用されるように、シード入力の前記第1のセットに対してシード入力の前記第2のセットを付加するステップを含む請求項18に記載のシステム。
- 前記第1のセットの前記シード入力の各々について脆弱性スコアを計算するステップが、
前記シード入力に対応する前記グレーボックス・ファジング処理によって調査されたプログラム制御フローを識別するステップと、
前記プログラム制御フローによって到達可能であるが前記グレーボックス・ファジング処理によって調査されていない複数の脆弱性インジケータに基づいて、前記シード入力に関する前記脆弱性スコアを計算するステップと、
を含む請求項17に記載のシステム。 - 前記第1のセットの前記シード入力のうち最高の脆弱性スコアを有する1つを選択するステップが、シード入力の前記第1のセットに対する前記コンコリック実行に優先権を与えるように、前記第1のセットの前記シード入力をそれぞれの脆弱性スコアに基づいて並べるステップを含む請求項17に記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/443,619 | 2019-06-17 | ||
US16/443,619 US11205004B2 (en) | 2019-06-17 | 2019-06-17 | Vulnerability driven hybrid test system for application programs |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020205047A JP2020205047A (ja) | 2020-12-24 |
JP7058302B2 true JP7058302B2 (ja) | 2022-04-21 |
Family
ID=70058275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020100093A Active JP7058302B2 (ja) | 2019-06-17 | 2020-06-09 | アプリケーション・プログラムのための脆弱性により起動されるハイブリッド・テストシステム |
Country Status (5)
Country | Link |
---|---|
US (1) | US11205004B2 (ja) |
EP (1) | EP3754527B1 (ja) |
JP (1) | JP7058302B2 (ja) |
KR (1) | KR102307364B1 (ja) |
CN (1) | CN112100050B (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102019211037A1 (de) * | 2019-07-25 | 2021-01-28 | Robert Bosch Gmbh | Verfahren zum Testen eines Systems |
US11349963B1 (en) * | 2020-01-27 | 2022-05-31 | Keysight Technologies, Inc. | Method and system for detecting anomalies of server and client |
JPWO2022145092A1 (ja) * | 2020-12-28 | 2022-07-07 | ||
CN113485755B (zh) * | 2021-06-30 | 2023-08-18 | 深圳市科力锐科技有限公司 | 设备驱动程序验证方法、装置、设备及存储介质 |
US11934534B2 (en) * | 2021-11-29 | 2024-03-19 | Microsoft Technology Licensing, Llc | Vulnerability analysis of a computer driver |
KR102483489B1 (ko) * | 2022-03-25 | 2022-12-30 | 연세대학교 산학협력단 | 동적 자원 분배가 가능한 하이브리드 퍼징 장치 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006523898A (ja) | 2003-04-18 | 2006-10-19 | オンス ラブス,インク | ソースコードの脆弱点の検出法および検出システム |
JP2017520842A (ja) | 2014-06-13 | 2017-07-27 | ザ・チャールズ・スターク・ドレイパー・ラボラトリー・インコーポレイテッド | ソフトウェア分析のためのシステムおよび方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7480902B2 (en) | 2004-07-08 | 2009-01-20 | Intel Corporation | Unwind information for optimized programs |
US8805043B1 (en) * | 2010-04-02 | 2014-08-12 | Jasjit S. Suri | System and method for creating and using intelligent databases for assisting in intima-media thickness (IMT) |
US8387018B2 (en) * | 2010-09-01 | 2013-02-26 | International Business Machines Corporation | Fault localization using directed test generation |
US9135405B2 (en) | 2011-05-26 | 2015-09-15 | Carnegie Mellon University | Automated exploit generation |
US8918885B2 (en) * | 2012-02-09 | 2014-12-23 | International Business Machines Corporation | Automatic discovery of system integrity exposures in system code |
US20140304687A1 (en) * | 2013-04-05 | 2014-10-09 | 2236008 Ontario, Inc. | Compilation validation |
CN107451474B (zh) * | 2016-05-31 | 2020-06-26 | 百度在线网络技术(北京)有限公司 | 用于终端的软件漏洞修复方法和装置 |
CN109117169B (zh) * | 2016-12-12 | 2022-06-07 | 百度在线网络技术(北京)有限公司 | 用于修复内核漏洞的方法和装置 |
RU2651531C1 (ru) * | 2017-04-20 | 2018-04-19 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Комсомольский-на-Амуре государственный технический университет" (ФГБОУ ВО "КнАГТУ") | Автоматизированная пропускная система |
KR101904911B1 (ko) * | 2017-10-13 | 2018-10-08 | 한국인터넷진흥원 | 하이브리드 퍼징 기반 보안 취약점 자동 탐색 방법 및 그 장치 |
CN108052825B (zh) * | 2017-12-29 | 2021-05-07 | 哈尔滨工业大学 | 针对二进制可执行文件的模糊测试与符号执行相结合的漏洞检测系统 |
CN108647520B (zh) * | 2018-05-15 | 2020-05-29 | 浙江大学 | 一种基于脆弱性学习的智能模糊测试方法与系统 |
US10635576B2 (en) * | 2018-06-18 | 2020-04-28 | Fujitsu Limited | Branch coverage guided symbolic execution for hybrid fuzz testing of software binaries |
CN108845944B (zh) * | 2018-06-28 | 2021-10-15 | 中国人民解放军国防科技大学 | 一种结合符号执行提高软件模糊测试效率的方法 |
CN109635568B (zh) * | 2018-11-26 | 2023-05-26 | 华中科技大学 | 一种基于静态分析和模糊测试相结合的并发漏洞检测方法 |
CN109670316A (zh) * | 2018-12-19 | 2019-04-23 | 杭州安恒信息技术股份有限公司 | 一种基于Java异常的漏洞检测方法和装置 |
-
2019
- 2019-06-17 US US16/443,619 patent/US11205004B2/en active Active
-
2020
- 2020-03-17 CN CN202010186617.2A patent/CN112100050B/zh active Active
- 2020-03-30 EP EP20166809.2A patent/EP3754527B1/en active Active
- 2020-05-07 KR KR1020200054366A patent/KR102307364B1/ko active IP Right Grant
- 2020-06-09 JP JP2020100093A patent/JP7058302B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006523898A (ja) | 2003-04-18 | 2006-10-19 | オンス ラブス,インク | ソースコードの脆弱点の検出法および検出システム |
JP2017520842A (ja) | 2014-06-13 | 2017-07-27 | ザ・チャールズ・スターク・ドレイパー・ラボラトリー・インコーポレイテッド | ソフトウェア分析のためのシステムおよび方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2020205047A (ja) | 2020-12-24 |
KR20200144051A (ko) | 2020-12-28 |
KR102307364B1 (ko) | 2021-09-29 |
US20200394311A1 (en) | 2020-12-17 |
CN112100050B (zh) | 2023-12-29 |
EP3754527A1 (en) | 2020-12-23 |
EP3754527B1 (en) | 2022-11-09 |
US11205004B2 (en) | 2021-12-21 |
CN112100050A (zh) | 2020-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7058302B2 (ja) | アプリケーション・プログラムのための脆弱性により起動されるハイブリッド・テストシステム | |
JP2016539421A (ja) | コールパスファインダ | |
US20140331204A1 (en) | Micro-execution for software testing | |
US9715440B2 (en) | Test scope determination based on code change(s) | |
CN110741354A (zh) | 呈现代码实体调用之间的差异 | |
WO2021034391A1 (en) | Data preservation using memory aperture flush order | |
US7788543B2 (en) | Methods and systems for generating and storing computer program execution trace data | |
US9772881B2 (en) | Hardware resource allocation for applications | |
US20230059703A1 (en) | Method, apparatus, and storage medium for generating test cases | |
US20180157605A1 (en) | Configuration of a memory controller for copy-on-write | |
US8769498B2 (en) | Warning of register and storage area assignment errors | |
US8145819B2 (en) | Method and system for stealing interrupt vectors | |
US20150309776A1 (en) | Identifying potentially uninitialized source code variables | |
US11334349B2 (en) | Removing feature flag-related codebase from applications | |
US10216562B2 (en) | Generating diagnostic data | |
JP2016537730A (ja) | 割り付けられていないメモリ、または初期化されていないメモリに対するリード・アクセスを検出すること | |
US9535713B2 (en) | Manipulating rules for adding new devices | |
US20190235899A1 (en) | Tracking virtual machine data | |
WO2021047380A1 (zh) | 应用程序管理方法、装置和存储介质 | |
US11074200B2 (en) | Use-after-free exploit prevention architecture | |
US8359456B2 (en) | Generating random addresses for verification of distributed computerized devices | |
US10379776B2 (en) | Operation interlocking in an address-sliced cache system | |
US20190286464A1 (en) | Virtual machine state recorder | |
US20240177025A1 (en) | System and method for managing data processing systems hosting distributed inference models | |
CN111897632B (zh) | 一种中断处理方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200609 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210727 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210803 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211102 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220405 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220411 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7058302 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |