apache / apache/cloudstack

DUO Authenticator returns a different number than Google and Microsoft for CloudStack's TOTP.

Đang mở
#11,776 3 bình luận 0 reaction 0 người được giao Xem trên GitHub
status:needs-functional-definition
Ngôn ngữ chính
Java
Star
3.1k
Fork
1.4k
Merge trung bình
6 ngày 19 giờ
Pull request đã merge (30 ngày)
32

Mô tả

### problem

The title mentions DUO Authenticator because I want to stay consistent with the issue I already reported in DUO Security’s GitHub.

The problem occurs when setting up TOTP 2FA for a user in CloudStack. The QR code and seed work correctly in Google Authenticator, Microsoft Authenticator, and my password manager. However, DUO Authenticator generates the wrong rolling PIN (it looks out of sync).

Since the same QR code/seed works in four other apps, I believe this is a bug in DUO Authenticator. Still, since DUO is widely used as an enterprise-grade app, I wonder if CloudStack might be missing some information DUO needs when generating the TOTP.

Below are some sample TOTPs for a test user.

Revealing the Seed : LGV3KCWF3AFZKYB4MWSZBH3R6YWBINJI
QRCode content: otpauth://totp/Company:username?secret=LGV3KCWF3AFZKYB4MWSZBH3R6YWBINJI&issuer=Company

Revealing the Seed : 3JLPXCKBHYR3CHE73T7FNGBS5CDMQRBG
QRCode content: otpauth://totp/Company:username?secret=3JLPXCKBHYR3CHE73T7FNGBS5CDMQRBG&issuer=Company

### versions

ACS 4.20.1

### The steps to reproduce the bug

Setup TOTP on DUO and another app and compare the rolling PIN.

### What to do about it?

Maybe there are optional parameters that can be provided to the Authenticator app while scanning the QRCode that would inform some missing parameters that it fails to assume.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu bằng cách tái hiện sự không khớp với nội dung otpauth của mã QR được cung cấp và phiên bản ACS 4.20.1 được nêu, đồng thời so sánh DUO với các trình xác thực khác. Sau đó, theo dõi quy trình thiết lập TOTP và tạo mã QR của CloudStack để xác định liệu có thiếu các tham số bắt buộc hay vấn đề không tương thích nằm ở DUO. Công việc được xem là hoàn tất khi xác định được phía chịu trách nhiệm và ghi lại hoặc kiểm thử hành vi đã được xác nhận.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
java
Lĩnh vực
authentication
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Ít trao đổi
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.