Fatal
crypto flaw in some government-certified smartcards makes forgery a
snap
Với
những chứng thực của chính phủ cho điều này bị gãy,
NSA
có thể không cần các cửa hậu.
With
government certifications this broken, the NSA may not need
backdoors.
by Dan Goodin - Sept 16
2013, 10:25pm ICT
Bài được đưa lên
Internet ngày: 16/09/2013
by Dan
Goodin - Sept 16 2013, 10:25pm ICT
Lời
người dịch: Lỗi trong các thẻ thông minh được cấp
cho các công dân Đài Loan dù được chính phủ chứng
thực. “Sự hỏng hóc
có những tác động không chỉ đối với các công dân
Đài Loan mà đối với các công nghệ mật mã được
chứng thực quốc tế ở những nơi khác nữa. “Đây là
một thực tế chung để quảng cáo các con chip như được
chứng thực nếu chúng có được chứng chỉ trong một số
phần của nó, nhưng chứng chỉ đó thực sự có ít ý
nghĩa”, các nhà nghiên cứu đã nói cho Ars. “Toàn
bộ hệ thống bị gãy đổ. 2 chứng chỉ đã không dừng
được RNG phần cứng tồi trong thẻ đó; làm thế nào
chúng ta có thể tin tưởng họ sẽ tìm thấy nhiều lỗi
tinh vi hơn như các cửa hậu cố ý””.
Xem các phần [01] và [02]. Xem
thêm: 'Chương
trình gián điệp PRISM trên không gian mạng'.
Các nhà nghiên cứu
nói họ đã nói cho các quan chức trong chính phủ Đài
Loan về các vấn đề đó và đã được nói rằng 10.000
thẻ có thể chịu những điểm yếu tương tự. Ước
lượng, các nhà nghiên cứu đã nói cho Ars, từng dựa vào
các hồ sơ nội bộ từ Bộ Nội vụ thì Cơ quan Chứng
thực và Chunghwa Telecom, cơ quan chứng thực số chính thức
của Đài Loan và nhà sản xuất thẻ thông minh, một cách
tương ứng.
“Chính phủ nói rằng
họ sẽ theo dõi và thay thế tất cả các thẻ có lỗi
nhưng đã không thực hiện như vậy vào thời điểm viết
bài này”, các nhà nghiên cứu đã nói cho Ars. “Vì thế
mỗi người với một thẻ RSA – 1024 có thể có một thẻ
yếu”. Các thẻ mới hơn RSA 2048 bit mà họ đã kiểm tra
đã không bị các điểm yếu y hệt, dù họ đã không đưa
ra khả năng các thẻ đó có chứa nhiều lổi tinh vi hơn
mà làm cho chúng cũng có khả năng bị tổn thương.
Không phải là lần
đầu tiên
Sự phát hiện có các
gốc rễ trong nghiên cứu được xuất bản vào năm ngoái
đã tạo ra sự phát hiện đáng ngạc nhiên khác: 4 trong
mỗi 1.000 khóa 1024 bit được thấy trên Internet đã không
cung cấp an ninh mật mã nào cả. Lý do:
đối với các khóa Chứng chỉ Số Công dân của Đài
Loan, hầu hết 27.000 khóa không có giá trị về mật mã
họ đã thấy các số đầu được chia sẻ với ít nhất
một khóa khác. Một trong số các đội nghiên cứu
đã phát hiện các khóa sau này đã đưa ra một phân tích
chi tiết về những gì không đúng. Vì hầu hết tất cả
các khóa từng là từ các chứng thực “tự ký” được
sử dụng để bảo vệ các bộ định tuyến router và các
thiết bị khác, các nhà nghiên cứu đã hồ nghi các phần
cứng thiếu các RNG mạnh khỏe được thấy trong các nền
tảng và ứng dụng tiên tiến hơn.
2 trong số 3 khỹ
thuật toán học được sử dụng để làm yếu tố mà
các khóa trong các thẻ thông minh của Đài Loan là phổ
biến và không tinh vi phức tạp. Chúng là các phép chia
thử và sử dụng các đồ như là Thuật toán Ước số
chung lớn nhất Nhị phân cho việc tìm các ước số chung
lớn nhất. Một kỹ thuật thứ 3 được biết tới như
là cuộc tấn công Coppersmith là tiên tiến hơn đáng kể,
và các nhà nghiên cứu nói nó đại diện cho thời điểm
được ghi đầu tiên mà nó đã từng được sử dụng để
phá một hệ thống mật mã.
Tất cả 3 kỹ thuật
có thể được triển khai trong các máy tính không phức
tạp để tạo nhân tố cho các khóa yếu chỉ trong vài
giờ. Việc sử dụng các phương pháp và phần cứng y hệt
để tạo nhân tố cho các khóa 1024 bit được sinh ra một
cách phù hợp có thể “không thấy các số đầu đó
trong đời sống được mong đợi của vũ trụ”, các nhà
nghiên cứu nói. (Cái khác, các thuật toán phức tạp hơn,
khi triển khai trên các siêu máy tính, đại diện cho một
mối đe dọa còn lớn hơn nhiều đối với các khóa 1024
bit),
“Các kết quả của
chúng tôi làm cho khá rõ rằng nỗ lực tính toán mà chúng
tôi bỏ ra càng nhiều, thì thì càng nhiều khóa hơn chúng
tôi có khả năng để tạo các nhân tố”, các nhà nghiên
cứu viết. “Chúng tôi đã tính toán đủ để minh họa
sự nguy hiểm, nhưng một kẻ tấn công có động lực có
thể dễ dàng đi xa hơn”.
Sống còn
như sự sinh số ngẫu nhiên (RNG) là an ninh mật mã, nhiệm
vụ vẫn giữ là khó ghê gớm để làm. Nó đòi hỏi một
máy tính triển khai những gì các nhà khoa học gọi là
hành vi không tất định, thường gây ra sự hoạt động
sai trong hầu hết các ngữ cảnh khác. Thường thì, các
lỗi cực kỳ tinh vi có thể gây ra cho các RNG, giả thiết
là mạnh mẽ, để làm giảm đầu ra có khả năng đoán
trước được cao độ. Một ví dụ là một chỗ bị tổn
thương hầu như chết người trong phát tán Debian của
Linux. Lỗi không được chú ý tới đã gây ra cho các máy
bị tổn thương để tạo ra các khó mật mã yếu nguy
hiểm trong hơn 20 tháng trước khi nó được chuẩn đoán
và sửa vào giữa năm 2008.
Chứng chỉ hợp lệ
FIPS 140-2 cho một trong những thẻ thông minh bị ảnh
hưởng. NIST.
Để ngăn ngừa các
sai lầm thông thường đó, các cơ quan tiêu chuẩn được
các chính phủ khắp thế giới đỡ đầu đã tạo ra một
tập hợp các hệ thống mật mã với các tiêu chí khắt
khe phải vượt qua để nhận được các chứng chỉ mà
có thể được tin cậy. Các chứng chỉ thường là một
điều kiện của một nền tảng phần cứng hoặc phần
mềm đang được áp dụng hoặc được cơ quan chính phủ
hoặc nhà thầu mua.
Nhưng
bất chấp việc vượt qua được cả FIPS 140-2 Mức 2 và
các tiêu chuẩn theo Commom Criteria (Các tiêu chí chung), thì
qui trình RNG được sử dụng để sinh ra các thẻ yếu rõ
ràng đã không đáp ứng được các yêu cầu bắt buộc
của chúng. FIPS 140, ví dụ, chỉ định rằng đầu
ra của một RNG phần cứng trong bộ xử lý của thẻ
thông minh phải (a) được tự do thông qua các kiểm thử
để kiểm tra liệu có là sự ngẫu nhiên và không có
thiên vị, và chỉ sau đó có thể có đầu ra (b) được
sử dụng như là một nhân cho cái gọi là bộ sinh bit
ngẫu nhiên tất định, trong nhiều thiết lập được
tham chiếu tới như là một RNG giả mạo. RNG phần cứng
từng được AE45C1 cung cấp, một CPU được Renesas sản
xuất mà ngồi trên đỉnh của thẻ thông minh. Bộ sinh
bit ngẫu nhiên tất định từng được phân dẻo của thẻ
thông minh dẫn dắt được Chunghwa Telecom cung cấp.
“Khá rõ rằng không
bước nào đã xảy ra trong trường hợp này”, các nhà
nghiên cứu đã nói cho Ars. “Thậm chí không có việc
thực hiện bước (a), bước (b) sẽ phải có các khóa
xuất hiện ngẫu nhiên một cách riêng rẽ, thậm chí nếu
chúng từng không. Thay vào đó, các khóa nhân tố có các
chuỗi dài 0 bit hoặc các mẫu bit theo chu kỳ mà gợi ý
bước (b) đó đã bị bỏ qua, và những gì chúng ta thấy
là đầu ra không bị ảnh hưởng đối với các phần
cứng không chạy sai”.
7 nhà nghiên cứu là
Daniel J. Bernstein, Yun-An Chang, Chen-Mou Cheng,
Li-Ping Chou, Nadia Heninger, Tanja Lange, và Nicko van Someren.
Nhiều thông tin hơn về họ và các phát hiện của họ
sẵn sàng ở đây. Sự
hỏng hóc có những tác động không chỉ đối với các
công dân Đài Loan mà đối với các công nghệ mật mã
được chứng thực quốc tế ở những nơi khác nữa.
“Đây
là một thực tế chung để quảng cáo các con chip như
được chứng thực nếu chúng có được chứng chỉ trong
một số phần của nó, nhưng chứng chỉ đó thực sự có
ít ý nghĩa”, các nhà nghiên cứu đã nói cho Ars. “Toàn
bộ hệ thống bị gãy đổ. 2 chứng chỉ đã không dừng
được RNG phần cứng tồi trong thẻ đó; làm thế nào
chúng ta có thể tin tưởng họ sẽ tìm thấy nhiều lỗi
tinh vi hơn như các cửa hậu cố ý”.
The
researchers said they informed officials in Taiwan's government of
the problems and were told that as many as 10,000 cards might suffer
similar weaknesses. The estimate, the researchers told Ars, were
based on internal records from the Ministry
of Interior Certificate Authority and Chunghwa
Telecom, Taiwan's official digital certificate authority and the
smartcard manufacturer, respectively.
"The
government claims that they will track down and replace all the
flawed cards but hasn't done so at the time of writing," the
researchers told Ars. "So everybody with an RSA-1024 card could
have a weak one." The newer RSA 2048-bit cards they examined
didn't suffer from the same weaknesses, although they didn't rule out
the possibility those cards contain more subtle flaws that make them
just as vulnerable.
Not
the first time
Enlarge
/ One of the affected smartcards, from Chunghwa Telecom Co., Ltd.
NIST
The
discovery has roots in research published last year that made another
astonishing discovery: four of every 1,000 1024-bit keys found on the
Internet provided
no cryptographic security at all. The reason: as with Taiwan's
Citizen Digital Certificate keys, the almost 27,000 cryptographically
worthless keys they found shared primes with at least one other key.
One of the research teams that discovered the keys later released a
detailed analysis of what
went wrong. Since almost all the keys were from "self-signed"
certificates used to protect routers and other devices, the
researchers speculated the hardware lacked the robust RNGs found in
more advanced platforms and applications.
Two
of the three mathematical techniques used to factor the keys in the
Taiwanese smartcards are well-known and unsophisticated. They are
trial division
and use of things like the Binary
Greatest Common Divisory Algorithm for finding greatest
common divisors. A third technique know as Coppersmith's
attack is significantly more advanced, and the researchers said
it represents the first recorded time it has been used to break a
cryptographic system.
All
three techniques can be carried out on unsophisticated computers to
factor weak keys in a matter of hours. Using the same methods and
hardware to factor 1024-bit keys that are generated properly would
"not have found those primes within the expected lifetime of the
universe," the researchers said. (Other, more sophisticated
algorithms, when carried out on supercomputers, represent a much
bigger threat to 1024-bit keys.)
"Our
results make it pretty clear that the more computational effort we
expend, the more keys we were able to factor," the researchers
wrote. "We did enough computation to illustrate the danger, but
a motivated attacker could easily go further."
As
crucial as random number generation (RNG) is to cryptographic
security, the task remains maddeningly difficult to do. It requires a
computer to carry out what scientists call non-deterministic
behavior, which typically causes malfunctions in most other contexts.
Frequently, extremely subtle bugs can cause RNGs, assumed to be
robust, to produce highly predictable output. One example was an
almost
catastrophic vulnerability in the Debian distribution of Linux.
The overlooked bug caused vulnerable machines to generate dangerously
weak cryptographic keys for more than 20 months before it was
diagnosed and fixed in mid 2008.
The
FIPS 140-2 Validation Certificate for one of the affected smartcards.
NIST
To
prevent these common mistakes, standards bodies sponsored by
governments around the world have created a set of rigid criteria
cryptographic systems must pass to receive certifications that can be
trusted. The certifications are often a condition of a hardware or
software platform being adopted or purchased by the government agency
or contractor.
But
despite passing both the FIPS 140-2 Level 2 and Common Criteria
standards, the RNG process used to generate the weak cards clearly
didn't meet their mandated requirements. FIPS 140, for instance,
specifies that output of a hardware RNG on the processor of the
smartcard must (a) be fed through tests to check whether it's random
and unbiased, and only then can the output (b) be used as a seed for
a so-called deterministic random bit generator, which in many
settings is referred to as a pseudo RNG. The hardware RNG was
provided by the AE45C1, a CPU manufactured by Renesas that sits on
top of the smartcard. The deterministic random bit generator was
driven by the smartcard firmware provided by Chunghwa Telecom.
"It's
pretty clear that neither step happened in this case," the
researchers told Ars. "Even without performing step (a), step
(b) should have made the keys appear individually random, even if
they were not. Instead, the factored keys contained long strings of 0
bits or periodic bit patterns that suggest that step (b) was skipped,
and what we see is the direct unwhitened output from the
malfunctioning hardware."
The
seven researchers are Daniel J. Bernstein, Yun-An Chang, Chen-Mou
Cheng, Li-Ping Chou, Nadia Heninger, Tanja Lange, and Nicko van
Someren. More information about them and their findings is available
here. The failure has
implications not only for the citizens of Taiwan but for
internationally certified cryptographic technologies everywhere.
"It
is a common practice to advertise chips as certified if they get
certification on some part of it, but the certification actually
means very little," the researchers told Ars. "The whole
system is broken. "Two certifications didn't stop the bad
hardware RNG on the card; how can we trust them to find more
sophisticated flaws such as intentional back doors?"
Dịch: Lê Trung Nghĩa
Không có nhận xét nào:
Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.