Захист відкритих клієнтів за допомогою одного алгоритму авторизації

Pозглянуто конфіденційні та відкриті клієнти у контексті авторизації. Проведено аналіз проблем, пов’язаних з авторизацією відкритих клієнтів, котрі не можуть забезпечити конфіденційність секретних налаштувань. Досліджено існуючі вектори атак, недоліки стандарту OAUTH, потенційно небезпечні практики....

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Проблеми програмування
Datum:2022
Hauptverfasser: Бодак, Б.В., Дорошенко, А.Ю.
Format: Artikel
Sprache:Ukrainisch
Veröffentlicht: Інститут програмних систем НАН України 2022
Schlagworte:
Online Zugang:https://nasplib.isofts.kiev.ua/handle/123456789/188664
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Назва журналу:Digital Library of Periodicals of National Academy of Sciences of Ukraine
Zitieren:Захист відкритих клієнтів за допомогою одного алгоритму авторизації / Б.В. Бодак, А.Ю. Дорошенко // Проблеми програмування. — 2022. — № 3-4. — С. 409-416. — Бібліогр.: 16 назв. — укр.

Institution

Digital Library of Periodicals of National Academy of Sciences of Ukraine
_version_ 1862705938248499200
author Бодак, Б.В.
Дорошенко, А.Ю.
author_facet Бодак, Б.В.
Дорошенко, А.Ю.
citation_txt Захист відкритих клієнтів за допомогою одного алгоритму авторизації / Б.В. Бодак, А.Ю. Дорошенко // Проблеми програмування. — 2022. — № 3-4. — С. 409-416. — Бібліогр.: 16 назв. — укр.
collection DSpace DC
container_title Проблеми програмування
description Pозглянуто конфіденційні та відкриті клієнти у контексті авторизації. Проведено аналіз проблем, пов’язаних з авторизацією відкритих клієнтів, котрі не можуть забезпечити конфіденційність секретних налаштувань. Досліджено існуючі вектори атак, недоліки стандарту OAUTH, потенційно небезпечні практики. Виявлено алгоритми, моделі та методи для захищеної авторизації відритих додатків. Створено модель алгоритму авторизації на основі Proof Key for Code Exchange та методу Backend For Frontend, яка не вразлива до атак Cross-Site-Scripting та Auth Code Interception. У результаті розроблено додаток, що являє собою відкритий клієнт на технології Blazor Web Assembly, використовуючи створену модель авторизації. The paper focuses on authorization in public clients and provides a secure authorization model as an alternative to costly Microsoft Duende BFF solution. After providing a brief overview of confidential and public clients in terms of authorization, we have analyzed problems and potential attack vectors associated with the authorization process in public clients due to their inability to hold credentials securely. Confidential clients are implemented on secure servers or able to facilitate secure authentication by other means, while public clients lack this security. Our research discovered algorithms, models, and methods for secure authorization in public clients. As a part of our model, we have implemented high entropy Proof Key for Code Exchange generator in C# .NET 6.0. In addition, we have provided a solution to a problem of storing sensitive information in public clients using the Backend for Frontend concept. This concept leverages a reverse proxy pattern where a backend application acts as a proxy and handles all client requests. Having a proxy backend application significantly tightens security model for public clients, while restricting possible attack vectors. The authorization model being researched was based on Proof Key for Code Exchange and Backend for Frontend approach. During the testing phase of our research, we have confirmed that the model was not vulnerable to Cross-Site-Scripting and Auth Code Interception attacks. A sequence diagram outlining main actors and interactions among them in context of authorization has been designed. The diagram stands as the visual representation of the model that uses proposed methods and algorithms. As a result, we have managed to build an alternative to secure authorization solutions for public clients that do not rely on the client secret. We have summarized our key findings in a Blazor Web Assembly application, which is classified as public and uses the described authentication model.
first_indexed 2025-12-07T16:56:30Z
format Article
fulltext
id nasplib_isofts_kiev_ua-123456789-188664
institution Digital Library of Periodicals of National Academy of Sciences of Ukraine
issn 1727-4907
language Ukrainian
last_indexed 2025-12-07T16:56:30Z
publishDate 2022
publisher Інститут програмних систем НАН України
record_format dspace
spelling Бодак, Б.В.
Дорошенко, А.Ю.
2023-03-11T08:54:09Z
2023-03-11T08:54:09Z
2022
Захист відкритих клієнтів за допомогою одного алгоритму авторизації / Б.В. Бодак, А.Ю. Дорошенко // Проблеми програмування. — 2022. — № 3-4. — С. 409-416. — Бібліогр.: 16 назв. — укр.
1727-4907
DOI: https://doi.org/10.15407/pp2022.03-04.409
https://nasplib.isofts.kiev.ua/handle/123456789/188664
681.3
Pозглянуто конфіденційні та відкриті клієнти у контексті авторизації. Проведено аналіз проблем, пов’язаних з авторизацією відкритих клієнтів, котрі не можуть забезпечити конфіденційність секретних налаштувань. Досліджено існуючі вектори атак, недоліки стандарту OAUTH, потенційно небезпечні практики. Виявлено алгоритми, моделі та методи для захищеної авторизації відритих додатків. Створено модель алгоритму авторизації на основі Proof Key for Code Exchange та методу Backend For Frontend, яка не вразлива до атак Cross-Site-Scripting та Auth Code Interception. У результаті розроблено додаток, що являє собою відкритий клієнт на технології Blazor Web Assembly, використовуючи створену модель авторизації.
The paper focuses on authorization in public clients and provides a secure authorization model as an alternative to costly Microsoft Duende BFF solution. After providing a brief overview of confidential and public clients in terms of authorization, we have analyzed problems and potential attack vectors associated with the authorization process in public clients due to their inability to hold credentials securely. Confidential clients are implemented on secure servers or able to facilitate secure authentication by other means, while public clients lack this security. Our research discovered algorithms, models, and methods for secure authorization in public clients. As a part of our model, we have implemented high entropy Proof Key for Code Exchange generator in C# .NET 6.0. In addition, we have provided a solution to a problem of storing sensitive information in public clients using the Backend for Frontend concept. This concept leverages a reverse proxy pattern where a backend application acts as a proxy and handles all client requests. Having a proxy backend application significantly tightens security model for public clients, while restricting possible attack vectors. The authorization model being researched was based on Proof Key for Code Exchange and Backend for Frontend approach. During the testing phase of our research, we have confirmed that the model was not vulnerable to Cross-Site-Scripting and Auth Code Interception attacks. A sequence diagram outlining main actors and interactions among them in context of authorization has been designed. The diagram stands as the visual representation of the model that uses proposed methods and algorithms. As a result, we have managed to build an alternative to secure authorization solutions for public clients that do not rely on the client secret. We have summarized our key findings in a Blazor Web Assembly application, which is classified as public and uses the described authentication model.
uk
Інститут програмних систем НАН України
Проблеми програмування
Захист інформації
Захист відкритих клієнтів за допомогою одного алгоритму авторизації
Protecting public clients using an authorization algorithm
Article
published earlier
spellingShingle Захист відкритих клієнтів за допомогою одного алгоритму авторизації
Бодак, Б.В.
Дорошенко, А.Ю.
Захист інформації
title Захист відкритих клієнтів за допомогою одного алгоритму авторизації
title_alt Protecting public clients using an authorization algorithm
title_full Захист відкритих клієнтів за допомогою одного алгоритму авторизації
title_fullStr Захист відкритих клієнтів за допомогою одного алгоритму авторизації
title_full_unstemmed Захист відкритих клієнтів за допомогою одного алгоритму авторизації
title_short Захист відкритих клієнтів за допомогою одного алгоритму авторизації
title_sort захист відкритих клієнтів за допомогою одного алгоритму авторизації
topic Захист інформації
topic_facet Захист інформації
url https://nasplib.isofts.kiev.ua/handle/123456789/188664
work_keys_str_mv AT bodakbv zahistvídkritihklíêntívzadopomogoûodnogoalgoritmuavtorizacíí
AT dorošenkoaû zahistvídkritihklíêntívzadopomogoûodnogoalgoritmuavtorizacíí
AT bodakbv protectingpublicclientsusinganauthorizationalgorithm
AT dorošenkoaû protectingpublicclientsusinganauthorizationalgorithm