[Discussion] side-channel attacks |
25/01/2011 09:03:03 (+0700) | #31 | 230294 |
|
gamma95
Researcher
|
Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
|
|
cr4zyboy, bình tĩnh cưng, chờ vài phút |
|
Cánh chym không mỏi
lol |
|
|
|
[Discussion] side-channel attacks |
25/01/2011 09:05:20 (+0700) | #32 | 230295 |
truyennxt
Member
|
0 |
|
|
Joined: 18/09/2010 07:51:36
Messages: 17
Offline
|
|
Theo em hiểu : social engineering là phương pháp "lừa" đối phương thông qua các phương tiện có thể là "điện thoại, mail, tiếp xúc trực tiếp, hay thông qua các mối quan hệ" mà non-technical. Những cái này thì đúng là nhiều khi victim sẽ tự đưa ra thông tin cho hacker mà không hề biết là mình bị tấn công. Tuy nhiên cũng có yếu tố "đoán" của hacker đó chứ. Ví dụ họ đoán thông qua tâm lý hay thông qua tiếp xúc để nắm bắt ngôn từ rồi đoán. Vậy là khi không có thông tin từ chính victim đưa ra thì hacker phải "đoán". Nếu đã "đoán" thì có liên quan tới side attack. |
|
|
|
|
[Discussion] side-channel attacks |
25/01/2011 09:35:32 (+0700) | #33 | 230301 |
|
WinDak
Researcher
|
Joined: 27/01/2002 11:15:00
Messages: 223
Offline
|
|
SCA ám chỉ các kỹ thuật crack hệ thống mã hoá. S-E có tính "social" hơn là kỹ thuật. |
|
-- w~ -- |
|
|
|
[Discussion] side-channel attacks |
25/01/2011 14:55:58 (+0700) | #34 | 230323 |
|
gamma95
Researcher
|
Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
|
|
@crazyboy: chắc chắn cái chiều dài password là _8_, còn bắt đầu bechmark tiếp thì cái time nó tào lao đó nha, lúc 13 microseconds, lúc 46 microseconds, lúc 230 microseconds =]... Check lại đi crazyboy, hoặc là cho nó usleep() vài microseconds trước khi check cái kí tự kế tiếp. |
|
Cánh chym không mỏi
lol |
|
|
|
[Discussion] side-channel attacks |
25/01/2011 15:01:37 (+0700) | #35 | 230324 |
|
H3x4
Member
|
0 |
|
|
Joined: 02/04/2009 00:03:16
Messages: 242
Offline
|
|
g4mm4: nó đang trên xe về quê rồi anh iu ko thể sleep giùm anh dc đâu )
với lại mấy bài này nó dựa vào xác suất thôi, vì khác biệt 1 kí tự nó chỉ chênh lệch trong vài ms. Anh thêm sleep vào thì còn crack gì nữa |
|
|
|
|
[Discussion] side-channel attacks |
25/01/2011 15:12:38 (+0700) | #36 | 230325 |
|
gamma95
Researcher
|
Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
|
|
|
|
[Discussion] side-channel attacks |
25/01/2011 15:50:45 (+0700) | #37 | 230327 |
LeVuHoang
HVA Friend
|
Joined: 08/03/2003 16:54:07
Messages: 1155
Offline
|
|
Code:
def check_pass(input):
i = 0
for c in ori_pass :
if(c != input[i]):
return False
else :
i = i + 1
return True
Nếu tui không lầm thì đoạn code này có lỗi đó nha.
Ví dụ như ori_pass là = "abc"
mà attacker nhập là "abcdef" thì vẫn pass nha |
|
|
|
|
[Discussion] side-channel attacks |
25/01/2011 15:57:16 (+0700) | #38 | 230328 |
|
gamma95
Researcher
|
Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
|
|
@LeVuHoang: nó có check cái len trong main() |
|
Cánh chym không mỏi
lol |
|
|
|
[Discussion] side-channel attacks |
25/01/2011 16:59:11 (+0700) | #39 | 230334 |
jcisio
Member
|
0 |
|
|
Joined: 17/04/2004 12:04:36
Messages: 34
Offline
|
|
gamma95 wrote:
@crazyboy: chắc chắn cái chiều dài password là _8_, còn bắt đầu bechmark tiếp thì cái time nó tào lao đó nha, lúc 13 microseconds, lúc 46 microseconds, lúc 230 microseconds =]... Check lại đi crazyboy, hoặc là cho nó usleep() vài microseconds trước khi check cái kí tự kế tiếp.
Vậy nó mới thực tế, chứ không ngồi lật sách ra giải bài tập cũng được rồi |
|
www.thongtincongnghe.com |
|
|
|
[Discussion] side-channel attacks |
25/01/2011 17:02:38 (+0700) | #40 | 230335 |
jcisio
Member
|
0 |
|
|
Joined: 17/04/2004 12:04:36
Messages: 34
Offline
|
|
gamma95 wrote:
@LeVuHoang: nó có check cái len trong main()
Nhờ quăng cái code lên nên mới biết được chiều dài là 8. Công nhận là SCA thì ai không có kinh nghiệm sẽ rất khó tấn công.
Cái này phải viết tool để tự submit và parse kết quả, chứ ngồi click click đến bao giờ mới xong |
|
www.thongtincongnghe.com |
|
|
|
[Discussion] side-channel attacks |
25/01/2011 17:14:20 (+0700) | #41 | 230339 |
|
H3x4
Member
|
0 |
|
|
Joined: 02/04/2009 00:03:16
Messages: 242
Offline
|
|
jcisio wrote:
gamma95 wrote:
@LeVuHoang: nó có check cái len trong main()
Nhờ quăng cái code lên nên mới biết được chiều dài là 8. Công nhận là SCA thì ai không có kinh nghiệm sẽ rất khó tấn công.
Cái này phải viết tool để tự submit và parse kết quả, chứ ngồi click click đến bao giờ mới xong
Hehe không đúng rồi bạn ơi Thử test một string với 8 kí tự so với các chuỗi có số kí tự khác sẽ thấy khác biết đó!
|
|
|
|
|
[Discussion] side-channel attacks |
25/01/2011 18:44:05 (+0700) | #42 | 230344 |
jcisio
Member
|
0 |
|
|
Joined: 17/04/2004 12:04:36
Messages: 34
Offline
|
|
H3x4 wrote:
jcisio wrote:
gamma95 wrote:
@LeVuHoang: nó có check cái len trong main()
Nhờ quăng cái code lên nên mới biết được chiều dài là 8. Công nhận là SCA thì ai không có kinh nghiệm sẽ rất khó tấn công.
Cái này phải viết tool để tự submit và parse kết quả, chứ ngồi click click đến bao giờ mới xong
Hehe không đúng rồi bạn ơi Thử test một string với 8 kí tự so với các chuỗi có số kí tự khác sẽ thấy khác biết đó!
Mình đã nói trong phần bạn tô đỏ rồi mà. Nhờ đọc code nên mới biết là bước 1 phải đi xác định chiều dài. Ai có kinh nghiệm thì chắc khỏi có code cũng biết, nhưng không có kinh nghiệm như mình thì cần.
Còn click click thì ra đến chuỗi 8 kí tự đã mỏi tay rồi (gõ cả trăm phím, click vài chục cái, mắt ngó láo liên). Đó là mới thử 8 lần. Giờ để tìm mật khẩu mà làm bằng tay thì tốn công sức gấp 100 lần công việc vừa làm lúc nãy (để ra số 8), chưa kể sai sót của con người. Chắc không ai làm cả!
Dưới đây là code mình viết. Hướng dẫn chắc khỏi nhỉ. Cái $start chứa các kí tự đầu tiên tìm được. Kí tự đầu tiên là "n"?
Code:
#!/usr/bin/php
<?php
$ch = FALSE;
function parse_result($pass, &$ch) {
$url = 'http://crazyboy.bshellz.net/cgi-bin/checkpass.py';
if (! $ch) {
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
}
curl_setopt ($ch, CURLOPT_POSTFIELDS, array('pass' => $pass, 'checkpass' => "Check normal"));
$content = curl_exec($ch);
if (preg_match('/spent (\d+) microseconds/s', $content, $match)) {
return $match[1];
}
else {
return FALSE;
}
}
$start = '';
for ($k=0; $k<256; $k++) {
$total[$k] = 0;
$that = 0;
for ($j=0; $j<3; $j++) {
$total[$k] += parse_result($start . chr($k), $ch);
}
if ($total[$that] < $total[$k]) {
$that = $k;
}
}
arsort($total);
$suspect = array_slice($total, 0, 10, TRUE);
print_r($suspect);
$codes = array_keys($suspect);
printf("The next character of '%s' could be '%s' or '%s' or '%s'\n", $start, chr($codes[0]), chr($codes[1]), chr($codes[2]));
curl_close($ch);
|
|
www.thongtincongnghe.com |
|
|
|
[Discussion] side-channel attacks |
25/01/2011 19:14:05 (+0700) | #43 | 230345 |
jcisio
Member
|
0 |
|
|
Joined: 17/04/2004 12:04:36
Messages: 34
Offline
|
|
Chạy lại lần nữa thấy sai! Hoá ra đoạn code trên bị sai, cần sửa lại. Mọi người tự tìm chỗ sai nhé Thêm nữa là để cho tự động, thì cần dùng thêm thống kê để loại khoảng 30% những lần test có biên độ cao so với trung bình (của cùng 1 giá trị thử). |
|
www.thongtincongnghe.com |
|
|
|
[Discussion] side-channel attacks |
25/01/2011 22:16:59 (+0700) | #44 | 230359 |
|
gamma95
Researcher
|
Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
|
|
jcisio wrote:
Chạy lại lần nữa thấy sai! Hoá ra đoạn code trên bị sai, cần sửa lại. Mọi người tự tìm chỗ sai nhé Thêm nữa là để cho tự động, thì cần dùng thêm thống kê để loại khoảng 30% những lần test có biên độ cao so với trung bình (của cùng 1 giá trị thử).
muốn mình coi thì đừng code php, cái thứ 2 là nên đọc lại những gì mình reply cho kỹ, cái thứ 3 là nên làm nhiều hơn là nói.
@crazyboy: mềnh rất trông chờ vào đáp án của bạn, nhớ là đừng trốn nha =]] |
|
Cánh chym không mỏi
lol |
|
|
|
[Discussion] side-channel attacks |
26/01/2011 15:44:12 (+0700) | #45 | 230388 |
cr4zyb0y
Member
|
0 |
|
|
Joined: 27/05/2010 11:50:30
Messages: 51
Offline
|
|
, pass có 8 ký tự thôi, mình check tay cũng ra mà . Mới xuống xe, mệt vãi lúa =]] |
|
|
|
|
[Discussion] side-channel attacks |
26/01/2011 17:02:07 (+0700) | #46 | 230389 |
|
gamma95
Researcher
|
Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
|
|
cr4zyb0y wrote:
, pass có 8 ký tự thôi, mình check tay cũng ra mà . Mới xuống xe, mệt vãi lúa =]]
đưa cái code xploit đi cưng, đừng vòng vo tam quốc =]] |
|
Cánh chym không mỏi
lol |
|
|
|
[Discussion] side-channel attacks |
26/01/2011 18:21:59 (+0700) | #47 | 230392 |
|
H3x4
Member
|
0 |
|
|
Joined: 02/04/2009 00:03:16
Messages: 242
Offline
|
|
@jcisio: thế này nha, lần đầu gõ a và click và "ngó nghiêng"
lần 2 gõ aa click và lại ngó nghiêng
....
lần 8 gõ aaaaaaaa , click và lại ngó nghiêng
Cả thảy chỉ có 8 lần click/gõ/ngõ nghiêng và số phím cần gõ là 1+2+3+......+8
Sao tới trăm lần và trăm phím dc nhỉ
@g4mm4: anh test lúc nửa đêm đó, để CPU nó chạy cho chuẩn ) |
|
|
|
|
[Discussion] side-channel attacks |
27/01/2011 04:26:13 (+0700) | #48 | 230403 |
jcisio
Member
|
0 |
|
|
Joined: 17/04/2004 12:04:36
Messages: 34
Offline
|
|
H3x4 wrote:
@jcisio: thế này nha, lần đầu gõ a và click và "ngó nghiêng"
lần 2 gõ aa click và lại ngó nghiêng
....
lần 8 gõ aaaaaaaa , click và lại ngó nghiêng
Cả thảy chỉ có 8 lần click/gõ/ngõ nghiêng và số phím cần gõ là 1+2+3+......+8
Sao tới trăm lần và trăm phím dc nhỉ
@g4mm4: anh test lúc nửa đêm đó, để CPU nó chạy cho chuẩn )
@H3x4: Số kí tự gõ là 1+2+3+4+5+6+7+8 = 36, rồi thêm Enter để submit cho mỗi lần, Enter để tắt cái alert, tổng cộng 52 lần, và bắt đầu... chán
@gamma95: mình thích PHP thì dùng PHP, có phải nộp bài cho bạn đâu mà phải theo yêu cầu. Không thích thì khỏi xem.
@crazy: password có phải bắt đầu là "CrB1T" không nhỉ
@all: Cái khó ở đây là thêm 1 kí tự đúng thì thời gian chỉ tăng thêm có xấp xỉ 0,3 us (khi máy chủ tương đối rảnh), mà kết quả trả về lại làm tròn đến 1 us nên hơi phiền. Đoạn code ở trên ngoài 2 chỗ sai nghiêm trọng (do test không kĩ), phải thêm phần thống kê như mình đã gợi ý ở trên. Thử ở localhost ổn, khi thử trên host đó thì load của nó không ổn định như ở localhost nên phải tăng số lần thử, kết quả chênh lệch ít hơn.
Đúng là SCA thật khó nhai. Lí thuyết suông thì dễ, nhưng ngồi thử thì lại xuất hiện 1 mớ lí luận khác cho phù hợp thực tế. |
|
www.thongtincongnghe.com |
|
|
|
[Discussion] side-channel attacks |
27/01/2011 08:06:16 (+0700) | #49 | 230407 |
|
AIO
Member
|
0 |
|
|
Joined: 21/02/2008 23:44:02
Messages: 127
Offline
|
|
jcisio wrote:
Chạy lại lần nữa thấy sai! Hoá ra đoạn code trên bị sai, cần sửa lại. Mọi người tự tìm chỗ sai nhé Thêm nữa là để cho tự động, thì cần dùng thêm thống kê để loại khoảng 30% những lần test có biên độ cao so với trung bình (của cùng 1 giá trị thử).
@jcisio: mọi người là cái móng tay, mình là số 1 nhể |
|
chẳng ai nghĩ gì về mình cả |
|
|
|
[Discussion] side-channel attacks |
27/01/2011 08:25:08 (+0700) | #50 | 230410 |
StarGhost
Elite Member
|
0 |
|
|
Joined: 29/03/2005 20:34:22
Messages: 662
Location: The Queen
Offline
|
|
Mấy bạn kể cũng rảnh thật. Network RTT nó noise còn nhiều hơn cả thời gian check password, các bạn mà tìm ra được thì đúng là tài. Hoặc giả cái con server chạy siêu rùa thì bó chiếu rồi. |
|
Mind your thought. |
|
|
|
[Discussion] side-channel attacks |
28/01/2011 00:54:39 (+0700) | #51 | 230457 |
Ar0
Member
|
0 |
|
|
Joined: 14/01/2011 23:20:26
Messages: 165
Offline
|
|
Vẫn đang chờ xem code exploit của cr4zyb0y. Bạn cr4zyb0y có thể public được không? |
|
|
|
|
[Discussion] side-channel attacks |
28/01/2011 01:00:24 (+0700) | #52 | 230459 |
jcisio
Member
|
0 |
|
|
Joined: 17/04/2004 12:04:36
Messages: 34
Offline
|
|
Ngay cả code exploit khi chạy ở localhost, server load < 0.1 mà cũng chưa ai đưa lên, mấy bác còn đòi code exploit trang web kia. Có code để làm gì, trong khi không chịu thảo luận về ý tưởng, mà cứ chăm chăm đọc bài giải.
Làm bài đơn giản này trước đi: "có phải password bắt đầu bằng chuỗi CrB1T" không. Nếu đúng, thì thời gian tính chuỗi CrB1Taaa và aaaaaaaa có độ cách biệt lớn, không thì thời gian chỉ xấp xỉ nhau. Mấy bác có đủ khả năng đo thời gian này không? |
|
www.thongtincongnghe.com |
|
|
|
[Discussion] side-channel attacks |
28/01/2011 01:11:26 (+0700) | #53 | 230460 |
Ar0
Member
|
0 |
|
|
Joined: 14/01/2011 23:20:26
Messages: 165
Offline
|
|
Bạn jcisio cứ bình tĩnh, mình nghĩ dĩ nhiên là ý tưởng thì ai cũng có và ai cũng đã thử rồi, nhưng có lẽ những ý tưởng này vẫn chưa phải là ý tưởng đúng nhất nên mọi người không tiện đưa lên mà chờ câu trả lời để tự xác minh. Việc xem câu trả lời cũng là một cách học hỏi đó thôi, có gì là tiêu cực đâu? |
|
|
|
|
[Discussion] side-channel attacks |
28/01/2011 08:52:06 (+0700) | #54 | 230474 |
|
gamma95
Researcher
|
Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
|
|
jcisio wrote:
Ngay cả code exploit khi chạy ở localhost, server load < 0.1 mà cũng chưa ai đưa lên, mấy bác còn đòi code exploit trang web kia. Có code để làm gì, trong khi không chịu thảo luận về ý tưởng, mà cứ chăm chăm đọc bài giải.
Làm bài đơn giản này trước đi: "có phải password bắt đầu bằng chuỗi CrB1T" không. Nếu đúng, thì thời gian tính chuỗi CrB1Taaa và aaaaaaaa có độ cách biệt lớn, không thì thời gian chỉ xấp xỉ nhau. Mấy bác có đủ khả năng đo thời gian này không?
Ê bồ, code thì có gì đâu ta? cái wan trọng là cái server của tác giả crazyboy nó ko stable thì làm sao mà chạy ??? Có một bạn khuyên nên exploit vào buổi tối mới hài chứ |
|
Cánh chym không mỏi
lol |
|
|
|
[Discussion] side-channel attacks |
28/01/2011 08:59:06 (+0700) | #55 | 230475 |
|
gamma95
Researcher
|
Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
|
|
|
|
[Discussion] side-channel attacks |
28/01/2011 12:58:59 (+0700) | #56 | 230482 |
jcisio
Member
|
0 |
|
|
Joined: 17/04/2004 12:04:36
Messages: 34
Offline
|
|
gamma95 wrote:
jcisio wrote:
Ngay cả code exploit khi chạy ở localhost, server load < 0.1 mà cũng chưa ai đưa lên, mấy bác còn đòi code exploit trang web kia. Có code để làm gì, trong khi không chịu thảo luận về ý tưởng, mà cứ chăm chăm đọc bài giải.
Làm bài đơn giản này trước đi: "có phải password bắt đầu bằng chuỗi CrB1T" không. Nếu đúng, thì thời gian tính chuỗi CrB1Taaa và aaaaaaaa có độ cách biệt lớn, không thì thời gian chỉ xấp xỉ nhau. Mấy bác có đủ khả năng đo thời gian này không?
Ê bồ, code thì có gì đâu ta? cái wan trọng là cái server của tác giả crazyboy nó ko stable thì làm sao mà chạy ??? Có một bạn khuyên nên exploit vào buổi tối mới hài chứ
1/ Thế code đó khi đem cái crackpass.py về localhost chạy nó có thành công không?
2/ Nếu server không stable mà chạy không được thì code chưa tốt rồi, cần suy nghĩ thêm. Ở trên có gợi ý cách giải quyết đó. |
|
www.thongtincongnghe.com |
|
|
|
[Discussion] side-channel attacks |
28/01/2011 15:07:10 (+0700) | #57 | 230486 |
|
freakmind
Member
|
0 |
|
|
Joined: 26/11/2007 02:53:23
Messages: 79
Offline
|
|
jcisio wrote:
1/ Thế code đó khi đem cái crackpass.py về localhost chạy nó có thành công không?
2/ Nếu server không stable mà chạy không được thì code chưa tốt rồi, cần suy nghĩ thêm. Ở trên có gợi ý cách giải quyết đó.
Bạn rốt cục đã giải quyết được chưa mà "gợi ý cách giải quyết" với lại "code chưa tốt" .
Bạn nên nhớ tìm ra vài kí tự đầu hay không thì vẫn là chưa tìm ra được pass, khi nào tìm ra pass hoàn chỉnh thì bạn hẵng post kết quả lên, không chả ai để ý đâu
Thêm nữa là side-channel chú trọng ở cái ý tưởng, và cái ví dụ về strcmp cũng chỉ là để giải thích một cách dễ hiểu thôi, chứ cái timing-attack hoàn toàn không có tính thực tiễn khi remote-attack , lại còn qua một shared-server nữa chứ.
Bạn crazyboy nếu có thể exploit được qua cái unstable server của bạn thì có thể share code lên để mọi người tham khảo với. |
|
|
|
|
[Discussion] side-channel attacks |
28/01/2011 20:47:16 (+0700) | #58 | 230506 |
jcisio
Member
|
0 |
|
|
Joined: 17/04/2004 12:04:36
Messages: 34
Offline
|
|
Chắc là mấy bác giỏi giỏi không thích tốn thời gian vào cái này nên chẳng có ai tham gia. Thôi, để nói luôn, kết quả là "CrB1T@h;", để đỡ nhận mấy câu phàn nàn kiểu "làm đi, nói nhiều quá".
Bạn freakmind nếu không nhầm thì ở trên ra vẻ lắm, quăng code ra lung tung. Còn không thực tiễn? Bài toán này là một thí dụ thực tế đó, chứ cùng 1 chuỗi lúc nào cũng ra thời gian như nhau thì chỉ tốt khi giải thích cho trẻ con thôi. Vài tháng trước mình cũng giải thích cho trẻ con như vậy (phép + thì hiện mức năng lượng cao, * thì hiện mức năng lượng thấp, nhưng năng lượng đo được là năng lượng để làm chuyện khác, chứ không phải năng lượng thực khi tính + hay *, vì nó rất khó đo, và trẻ con nó không quan tâm phép nhân tốn gấp mấy lần phép cộng...). Trẻ con ở đây là đám nhóc tầm 6-7 tuổi gì đó.
Mình đưa cái kết quả lên là để chứng minh rằng việc giải mã là khả thi. Các bạn cứ suy nghĩ tiếp đi, cách làm đã nói ở trên mấy lần rồi. Còn kêu gào crazyboy không hiểu có lợi gì? Code đưa ra rồi, còn thiếu gì nữa đâu. Đây là thách đố mở, crazyboy không chắc sẽ có lời giải. Hay muốn crazyboy gõ lệnh:
Code:
echo "print ori_pass;" >> checkpass.py
|
|
www.thongtincongnghe.com |
|
|
|
[Discussion] side-channel attacks |
28/01/2011 22:09:55 (+0700) | #59 | 230519 |
|
WinDak
Researcher
|
Joined: 27/01/2002 11:15:00
Messages: 223
Offline
|
|
Việc giải mã là khả thi nếu như cái CPU chạy ổn định và phải có một chút may mắn là lúc đó không có ai cùng đang connect vào và test cái exploit. Nghe thật là lame.
Cái code của crazyboy chỉ để nghịch thôi chứ thực thế không thể làm được, bạn nào tìm ra pass mà không cần sử dụng cái đoạn in ra thời gian xử lý thì mình mới phục là tài |
|
-- w~ -- |
|
|