Posts

Showing posts from 2015

Right now at Dreamplex

Image
I feel old sitting next to these comrades. What was I doing when I was 20? Didn't really remember, but for sure I wasn't learning to hack Windows kernel.

Dreamplex looks like a nice place. They probably need to provide more comfortable chairs, but the offices look modern with fancy equipments and really fast WiFi, and the atmosphere is exciting with a lot of folks busily coding their dreams. I feel like at home.

Here come the winners

Whoa. Bruce and I have finally selected the winners of the memset challenge. We got 9 submissions, 5 of which came up with the same size, but only one person attempted to implement memcpy, and it's Manh Luat Nguyen. Congratulations!
The winning code is
global my_memset my_memset: pop edx ; return address pop edi ; src String pop eax ; char pop ecx ; length push edi rep stosb pop eax sub esp,16 ret
The resulting shellcode is 12-byte: \x5a\x5f\x58\x59\x57\xf3\xaa\x58\x83\xec\x10\xc3. Instead of using movs, Luat was the first that creatively used one-byte pop instructions to save space.
The runner ups are - Pham Hong Phi (12 bytes) - Le Thanh Binh (12 bytes) - Nguyen Vu Hoang (12 bytes)
There's actually one person that came up with a 10-byte implementation, it didn't pass my unit tests, but Bruce likes him enough that he wants to give him a special prize. Congratulations to Pham Viet Hoa!
Regarding scholarships I made a stupid mistake and booked a room too small (there were also some la…

Another update on memset()

We test submissions by running them through a set of unit tests which are written in standard C. Each unit test accepts a function pointer, which points to the being tested implementation. Thus, your function needs to work properly when called in a C program. While it's possible to use special compiler options or attributes to reduce code size, we won't use them in our unit tests. Moreover, if we replace the standard memset with your implementation existing C programs must still work.Although you can give us an .asm file, it's best if you just give us some shellcode.We have one hour to go, and the correct and shortest implementation that we've seen so far is 12-byte.

Last update on the memset challenge

We've received many good submissions to the memset challenge in the past 24 hours. We haven't tested, but it looks like someone has managed to shrunk it to fewer than 10 bytes, really cool!

Note that although we ask you to optimize for code size, in order to win your implementation must be correct first. It looks like some implementations don't return anything which is wrong as memset returns its first argument. Please send us updates if you want to correct your submission.

We're going to head out for the meeting at University of Science. After that we'll test the implementations and measure their size. We'll announce the winners early this evening.

Thanks all for participating!

The shortest memset is... ?

We have a few 100% scholarships for college students to attend Bruce Dang's training class at TetCon 2016. In order to select the best persons that might make the most out of the class, we ask those who want to apply for the scholarship to implement memset, and whoever writes the shortest code wins. More details on this mini challenge can be found here.

So far we've already received 3 submissions. The shortest implementation is just 10-byte. Can you beat it ;)? Don't worry if you can't we'd love to see your code anyway.
--
In other news, tomorrow Bruce and I are going to have a Q&A session with computer science and computer security students at University of Science. We're going to share what we do in our day jobs, and answer any questions the audience might have w.r.t technology, working in the U.S., etc. The exact date and location is
Time: 13:00, December 29 2015 (tomorrow) Location: Room I-23, 227 Nguyễn Văn Cừ, District 5.
The organizers told me that eve…

Đánh nhau bằng toán

(Hello Facebookers! Có vẻ như ai đó đã gửi bài này lên Facebook. Tôi thấy rất nhiều người đọc đến từ đó. Tôi thêm vào một phần tóm tắt để cho những ai không rành kỹ thuật dễ nắm bắt hơn.)

Tóm tắt: Juniper, một hãng chuyên bán các thiết bị mạng nổi tiếng của Mỹ, thông báo rằng có ai đó đã bí mật cài mã độc vào các thiết bị của họ. Mã độc này cho phép kẻ tấn công có thể truy cập từ xa vào các thiết bị này, đồng thời giải mã luôn các dữ liệu được gửi xuyên qua chúng. Sau quá trình tìm hiểu, người ta phát hiện ra một trong hai mã độc có liên quan đến giải thuật tạo số ngẫu nhiên Dual EC. Từ năm 2007 hai nhà nghiên cứu ở Microsoft đã chỉ ra rằng giải thuật này có thể đã bị NSA cài mã độc và điều đó sau này được xác nhận bởi các tài liệu do Edward Snowden tiết lộ. Ngoài Juniper thì RSA, một công ty chuyên bán các sản phẩm an toàn thông tin đình đám khác của Mỹ, cũng từng bị phát hiện cố tình sử dụng Dual EC trong các sản phẩm của họ, sau khi nhận 10 triệu USD từ NSA. Nếu bạn là chủ doanh ng…

Free seats for Bruce Dang's training class

Better late than never, I'm excited to announce that we're going to grant a handful of 100% scholarships for college students to attend Bruce Dang's class at TetCon 2016.Since we'll probably receive more applications than available spots, we have a challenge and whoever wins will get to attend the class for free (with a chance to obtain a signed copy of Bruce's book on practical reverse engineering). Anyone can take the challenge, but in order to win you must be currently enrolling to some official university in Vietnam or oversea. We will check your student ID at entrance.The class is two-day, Dec 30 and Dec 31. The location is in downtown Saigon. We won't be able to pay for accommodation or transportation.Without further ado, here's the challenge: write memset() using x86 assembly. Whoever provides the shortest code in terms of code size, i.e., number of instructions, wins. You can implement for Linux or Windows. You can use whatever instruction set you w…

Tại sao các công ty nên gửi người đến TetCon

Trong lần nói chuyện ở ngày hội an toàn thông tin ở VNISA, tôi có nói trái với hiểu biết thông thường của nhiều người hầu hết các thiết bị và giải pháp bảo mật có sẵn thường làm cho hệ thống của người mua kém an toàn hơn (xem tóm tắt báo cáo của tôi ở đây). Mấy tuần vừa rồi xảy ra một sự kiện chứng minh cho luận điểm này.
Nhóm Project Zero phát hiện ra một lỗi chạy lệnh từ xa trên các thiết bị của FireEye. Lỗi chạy lệnh từ xa là dạng lỗi nguy hiểm nhất vì chúng cho phép toàn quyền điều khiển mục tiêu có lỗi. Các thiết bị của FireEye thường được đặt ở những khu vực trọng yếu trong hệ thống, có thể thấy hết toàn bộ dữ liệu đi ra đi vào hệ thống, từ email, tài liệu, cho đến mật khẩu, v.v. Nói cách khác, các thiết bị này trở thành mục tiêu "béo bở" nhất. Vấn đề là chất lượng an ninh phần mềm của các thiết bị như vậy thường không được đảm bảo, bởi các công ty làm thiết bị an ninh, trớ trêu thay, lại thường không có đội làm an ninh phần mềm. Ngoài FireEye, Project Zero còn phát hi…

Sài Gòn

Bay nửa vòng trái đất, vừa thấy may mắn vì mình sinh ra thời này, di chuyển xa như vậy mà chỉ mất có chưa đến một ngày, vừa thấy mệt vì vẫn còn dài quá. Chuyến bay đầu kéo dài gần 15 tiếng đồng hồ, thêm chuyến sau 2 tiếng nữa, cuối cùng tôi cũng đã về đến Sài Gòn. Chỉ có điều hành lý thì vẫn đang ở lại San Francisco. Tôi sẽ sa thải hãng United mắc dịch.
Năm nay tôi chỉ về vài bữa, phải quay trở lại ngay sau TetCon 2016. Tôi muốn đi dự hội thảo Real World Crypto 2016 diễn ra ngay sau TetCon 2016 ở Stanford, lỡ hẹn mấy lần rồi. Nhắc mới nhớ, hôm trước nhờ báo Tuổi Trẻ đưa tin (có chỗ sai là tôi không phải làm cho Project Zero), bán nhanh vèo vèo, bây giờ đã bán hết hơn 2/3, chỉ còn vài chục vé cuối cùng. Ai chưa mua nên nhanh tay.
Thời gian ít ỏi nên chắc tôi chỉ loanh quanh ở nhà với gia đình. Hoạt động yêu thích của tôi là dẫn mấy đứa con nít trong nhà đi chơi sở thú. Dẫu vậy tôi cũng muốn có một buổi gặp gỡ nói chuyện với các bạn sinh viên đang theo học ngành CNTT hoặc ATTT. Năm n…

Whiteout

Image

TetCon 2016: discounted tickets sold out!

Wow, thanks to your support all of our discounted tickets are claimed. Please keep spreading the word and help us sell even more!

Note that even at full price, we're selling tickets at a loss, as Sheraton charges us \$30 per person. A friend asked why I keep the prices too low, and I don't even have a good reason rather than that I want to ensure that everyone has a chance to attend the conference. That's why we give away 30 free tickets to students who show some interest in our field. That's why we have discounted tickets. But we really need your support to make this work. Please share the conference with a link to https://tetcon.org/ on Facebook, Twitter, your favorite forums, or write about it on your blog. Anything would be helpful and much appreciated :).

We need this world of mouth marketing, because this year I didn't raise enough money to hire someone to run a proper marketing campaign. Last year I got \$17,000 from Microsoft, Facebook, and my employer, but…

TetCon 2016 Final Program Released

Phew! I'm excited to announce that the final program of TetCon 2016 has been released. It'll be a packed day full of hackers and security researchers who will show you how to find 0-days in Microsoft Edge, to break Android phones, or to build your own security tools.

We'll have 10 talks (out of 20 submissions.) We know it's insane to pack so much content in a single day -- next year I'll try to make this a two-day event -- but just come and see, and you'll understand why we chose these talks.

Happy holidays and see you all at Sheraton Saigon a few weeks from now!

TetCon 2016: 3 more new talks announced!

Congratulations to Nguyen Anh Quynh, Nguyen Hong Quang and Nguyen Minh Hai! They will share with us their tools and frameworks that they've built to analyze malware, write exploits, or just do anything you want to do with the CPU. These are must-see talks for people who are into low-level stuff.

I'm waiting for confirmation from the last two speakers, and will update you all as soon as they get back to me.

I've also sent 30 free tickets to students that have reached out to us. We won't be able to give away any more.

There are fewer than 20 discounted tickets left. Go buy yours before the price increases any moment from now.

TetCon 2016 news

I've been working on the final program, and will release it as soon as the committee gives me the green light and the speakers confirm their participants.

If nothing changes at the last minute, the second batch of talks will be on building security tools to find 0days, to analyze malware or to develop kernel exploits. This is another proof that our community has reached to the next level of the security research food chain -- we used to be consumer of tools provided by oversea researchers, but we now build our own ones.
We will have up to 10 talks, and it's already a challenge to schedule the program. We want to give speakers enough time to demonstrate their ideas, but we also want to have more time for tea and lunch breaks which hopefully would sparkle more interactions between speakers and attendants. Speaking of lunch break, it'll be awesome if someone can sponsor a lunch party for everyone. Please drop me a line if you or someone you know are interested in this great c…

First batch of TetCon 2016 talks released tonight

Edit: talks are out. Congratulations to Ngo Anh Huy, Pham Tung Duong, Tran Minh Quang, Nguyen Van Long, Hung Dang, and Caleb Fenton!

We've finally come up with the first batch of talks, which will be released on https://tetcon.org as soon as I get home today (I'm at work and don't have access to the server.) The rest will be chosen and announced in a few days.

The talks are super interesting, some are very original, and I'm sure you will enjoy them all. All but one speaker are local, but what's made me most excited is I don't know most of them. Perhaps I've been too disconnected with the community -- I used to know most Vietnamese hackers -- but perhaps there is now a new generation with so many great hackers that it's impossible for anyone to know everyone. The new faces are young, speak English, work for big corps or consulting firms, and thanks to CTF games they can reverse engineer code, write exploits, hack web or break crypto. I have no doubt that…

Bad Life Advice: Never Give Up - Replay Attacks Against HTTPS

(joint work with Thiago Valverde and Quan Nguyen -- see also Thiago's post on his blog)

I was once advised by a self-help book that I should never give up, be confident in myself, and keep trying. The secret to success is failure, wrote the book. I'd always believed that this is a great wisdom until Thiago and Quan helped me realize that it could lead to replay attacks.

A few weeks ago we found that because Chrome (and Firefox and possibly other browsers) automatically retries failed requests, a man-in-the-middle adversary can easily duplicate and replay HTTPS traffic. More details can be found in Thiago's blog post, but the attack can be summarized as follows:

* The adversary sets itself up as a TCP layer relay for the targeted TLS connection to, say, google.com.

* When the adversary detects a request that it wants to replay (using traffic analysis), it copies all relevant TLS records, and instead of relaying the HTTP response from the server it just closes the socket to …

Buy your tickets to TetCon 2016 now!

TetCon 2016 tickets are available for sale today. There are only 300 tickets. Buy yours now before it's too late!

Each ticket is VND500,000, but if you buy before December 21, you are eligible for a ~30% discount, and have to pay only VND350,000. Available tickets are on sale until January 3, 2016. We do not sell tickets on the day of the conference or at the entrance.

For students only: we will give free tickets to eligible students.

TetCon 2016 Last Call For Papers

If you submitted something, I just emailed you with a round of feedback from the committee. Please respond and address our concerns as soon as possible.

If you, however, plan to submit something, this is your last chance. We've received 13 submissions, 9 of them are Vietnamese, 3 of which are working and living oversea, and the rest are foreigner. The committee will be working very hard next week to select the best submissions which together with the invited talks will form the final program of TetCon 2016.

Chances are we have to cancel the training program, unless we get 5 more sign ups for each class before the end of next week. So if you want to learn more about bitcoin, Windows kernel reversing, or crypto, sign up now! I don't want to brag about it, but other conferences have offered the same classes at 4 to 6 times our price.

It's official: TetCon 2016 will be at Sheraton Saigon

It's somewhat unexpected, but a very nice man, perhaps a regular reader of this blog, has helped us secure a deal with Sheraton, the marvelous 5-star hotel right at the heart of Saigon.
Tickets will be on sale tomorrow. See you all at Sheraton on Jan 4, 2016!

TetCon News

* If you want to submit to TetCon, please do it now. The CFP will end by the end of this week.

* If you want to take one of the training classes, please sign up now. We need at least 10 attendants per class; otherwise we have to cancel because we can't cover the cost.

* We are still working on the venue, as it turns out that we couldn't afford what we chose last time. If you know someone that wants to sponsor TetCon please leave a comment or reach out to me in private at thaidn@gmail.com. We seriously need more funding.

Thanks!

Bò lên Half Dome

Image
Giữa lưng chừng núi, tôi đoán nếu mà rớt từ đây xuống chắc cũng lâu lắm người ta mới tìm thấy xác mình. Tôi ráng hết sức bấu vô sợi dây cáp, ráng một hồi thì hết sức thiệt. Hai tay mỏi nhừ, chân trái chuột rút. Chưa bao giờ tôi thấy mệt và sợ chết như vầy. Giữa lúc ngàn cân treo sợi tóc, tự dưng tôi muốn tính xem từ đây mà rơi tự do, với chiều cao thế này, vận tốc thế này, gia tốc thế này, sức gió thế này, hướng gió thế này, không biết bao giờ mới chạm đất và cách chân núi bao xa.
--

Nhóm chúng tôi gồm 5 người, khởi hành từ trưa thứ bảy từ Bay Area, chạy một mạch đến chập choạng tối thì đến Yosemite, công viên quốc gia lớn nhất California cũng là công viên đầu tiên của nước Mỹ. Vô công viên không tìm được chỗ cắm trại, cả đám quay ra ngoài, may quá tìm được một nơi cách cổng chừng 10' lái xe. Hạ trại, ăn uống nhanh, đi ngủ sớm, mai hứa hẹn là một ngày dài. Bọn tôi sẽ trèo lên Half Dome.

Yosemite rộng kinh khủng, hơn 3.000 cây số vuông, cả một vùng đồi núi bạt ngàn, b…

Super stoked

Image

Tìm người tổ chức sự kiện

Tôi đang cần tìm người tổ chức sự kiện để hỗ trợ việc tổ chức TetCon 2016. Nếu có ai biết công ty hoặc cá nhân nào chuyên tổ chức các sự kiện như TetCon thì làm ơn để lại lời nhắn hoặc email cho tôi ở thaidn@gmail.com.

Cảm ơn nhiều.

Trượt tuyết

Image
Mùa đông ở đây cuối tuần không đi trượt tuyết cũng không biết làm gì khác. Trời tối sớm và lạnh, về nhà chỉ muốn rú ở trong nhà. Đọc sách riết cũng chán, may là còn có món này để giải trí.
Con nít ở đây trượt tuyết từ 4-5 tuổi, đến tầm 10 tuổi là coi như đã rành sáu câu. Còn dân nhiệt đới gió mùa như tôi, hăm mấy mới bắt đầu tập, không có năng khiếu, học mãi không vô. Định bỏ cuộc rồi ai dè có "thần đồng" chỉ cho vài chiêu, thế là ghiền.
Trượt tuyết khác với tất cả các món thể thao mà tôi từng chơi. Trước hết là mắc mỏ, đồ đạc sắm đủ cũng cả ngàn Obama. Đủ thứ món: giày, ski, pole, mắt kiếng, nón bảo hiểm, găng tay, quần áo ấm đặc biệt chống thấm, v.v. Giày với ski là hai thứ mắc nhất, nhưng cũng là hai thứ quan trọng nhất cần phải đầu tư nếu muốn đi lâu dài. Được cái đồ bền, một lần sắm có thể đi năm bảy mùa, sau đó còn có thể bán lại gỡ được chút vốn.
Có đồ rồi, cứ xem dự báo thời tiết là đi thôi. Từ nhà tôi chạy xe cỡ hơn 3 tiếng là đến chỗ hồ Tahoe, nơi có nhiều k…

Sign up links for TetCon 2016 training classes

TetCon updates

I'm finally back from a long vacation, and now, as usual, going to rush to make a few updates and announcements with regard to TetCon 2016. Please forgive my bad organizing!First and foremost, Vietnamese hackers, why don't you submit anything to TetCon? We've got only a handful of submissions so far, and most of them are from oversea researchers. BTW if you submitted in the past few weeks, you'll get a yes/no response within one or two days.We can always send the CFP to Twitter, DailyDave, etc., and I'm sure we'll see a lot of good submissions. But we want to save the spotlight for the new bloods in our local community. We also want to see women researchers and those from other minority groups. So if you have an idea or have done something cool in the past year or so, please drop us a line as soon as possible! The program committee, cfp@tetcon.org, can help evaluate and improve your works.Secondly, we'll move to a new venue. I've had troubles raising sp…

Tales of The Cryptographer

Once upon a time most people thought that RSA encryption was unbreakable, until a cryptographer demonstrated a plaintext-recovery attack. The attack, a.k.a the million message attack, became instant classic and is the root of all error oracle attacks including padding oracle. It was 20 years ago.
There were a lot of criticisms against the Digital Signature Algorithm when it was introduced in the early 90s, but nobody actually came up with any concrete attacks, until a cryptographer demonstrated a private key-recovery attack. The attack, which exploits a leakage of a fraction of a bit, became legendary, and still works against most naive implementations. It was 15 years ago.
Hal Finney, who was probably the person that designed or co-designed Bitcoin, was once excited about a signature-forging attack against RSA. The attack was discovered by a cryptographer, who developed an exploit using only paper and pencil. It turned out that the attack can be used to forge CA certificates, which cou…

A Whirlwind Tour of Galois Theory

translated, for a. and j.

A few years ago I found an abstract algebra book at a used book sale. Although I knew I'd probably never read it I bought it anyway, 'cause it costed just one buck and I can't never say no to cheap books! Said book stayed quietly on my bookshelf for many months, and I'd totally forget about its existence if one day I didn't suddenly found myself wanting to solve a pretty cool problem, which is proving that 26 is the only natural number preceded by a square (25) and succeeded by a cube (27). People on Yahoo! Answers told me that it's a theorem by Fermat, and if I wanted to prove it I needed to know more about Unique Factorization Domain, but this is exactly the title of one of the chapters in that \$1 book!

I started reading it, and immediately got hooked to its chatty tone, and soon spent many evenings solving the exercises or searching for solutions. Eventually I got to prove that unique property of 26 (yay!), but the book offers more…

Đường đến Galois

Hai tháng nay tôi đi vòng vòng chơi ở Châu Âu, vác theo mấy cuốn sách, định bụng sáng đi chơi, tối về đọc toán cho sang. Rốt cuộc toàn chơi, chẳng đọc được mấy chỉ có lâu lâu mở ra đọc được vài trang để cho dễ ngủ. Nghĩ bụng đọc kiểu này chắc chẳng thu được gì, ai dè lại hiểu được lý thuyết Galois. Có lẽ nhờ ăn đồ Pháp?

Tôi đọc về lý thuyết Galois mấy tháng rồi, nhưng chỉ hiểu lờ mờ. Tôi chỉ nhận ra sức mạnh của Galois cho đến khi làm bài tập đơn giản này:

Bài tập: tìm đa thức nhỏ nhất (minimal polynomial) $f(x)$ thuộc $\mathbb{Q}[x]$ (tức có các hệ số hữu tỉ) nhận $\epsilon= 1 + \sqrt[3]{2} + \sqrt[3]{4}$ là nghiệm.

Có một cách giải sơ cấp là dự đoán $f(x)$ sẽ có bậc 3 ở dạng $f(x) = x^3 + ax^2 + bx + c$, thế $\epsilon$ vô, khai triển rồi quy về hệ phương trình theo $a$, $b$ và $c$. Mới đầu tôi làm cũng vậy, nhưng sau đó thấy "cơ bắp" quá nên dẹp sang một bên. Vậy áp dụng Galois thế nào?
Galois chỉ ra rằng chỉ cần biết một nghiệm của $f(x)$ là có thể …

Ổi thơm (pineapple guava)

Image
Lần đầu tiên ăn được trái ổi thơm. Ngon ve sầu! Vị ngọt thanh, có chút xíu chua, pha lẫn mùi của ổi xá lị, bơ và thơm. Ăn cứ như là chè cocktail.

Trong một diễn biến khác, năm nay táo mất mùa nhưng lại được mùa hồng giòn. Trái chín cây, trái nào ăn cũng tươi, giòn, vị không quá ngọt như mua ngoài chợ. Cây lùn xủn, mà cũng được khoảng 200 trái như vầy:


Cha truyền con nối

Image
Tôi đi Florence chơi, ghé thăm tiệm giày Francesco da Firenze (tức Francesco ở Florence, giống như Leonardo da Vinci nghĩa là Leonardo ở Vinci).

Nhà Francesco làm giày cha truyền con nối, cho đến nay đã ba bốn thế hệ. Giày của Francesco được làm bằng tay, tùy nghi tinh chỉnh, kiểu dáng cổ điển và quan trọng hơn hết là bền. Mua một đôi, hẹn không gặp lại, vì mang hoài không hư. Tôi hỏi con trai của Francesco, trông trên dưới bốn mươi, làm giày lâu chưa, ảnh cười nói lâu lắm rồi. Nghề dạy nghề, giày của nhà Francesco được nhiều người biết đến, mặc dù Florence không thiếu những cửa tiệm sang trọng và, đôi khi, phải chăng hơn.

--

Nếu làm giày cha truyền con nối được, sao quan chức truyền ngôi cho con lại bị chúng chửi?! Hồi xưa ba ở trong rừng, bây giờ con đi học ở Tây, rõ ràng tốt hơn nhiều rồi mà. Gia đình có truyền thống, con cái cũng có nhiều cơ hội được tiếp xúc và rèn luyện sớm hơn. Người ta nói, con nhà tông, không giống lông cũng giống cánh, không phải là không có cơ sở.

Tôi nghĩ …

Thuyền ai đậu bến

Image

Đi chơi xóm núi

Image

TetCon 2016 CFP

Click here to submit your talks. Last year we got far more talks submitted than we have room for, so please submit early to secure your spot. For most talks, especially those with new findings, you can expect a yes/no response from us in just a few days.

TetCon will reimburse up to $400 for domestic travel and $1,000 for international travel. TetCon will pay for a single hotel room for up to two nights at the official conference hotel, limited to the nights of January 3 and 4, 2016. TetCon will not offer any flight, travel or accommodations reimbursement for lightning talk speakers. All speakers will receive a free pass to the conference and all parties.

The submission window will be open from 6 October 2015 and closed on 06 December 2015, at 11:51pm Saigon time zone. The last batch of speakers will be announced one week after that.

We especially love to hear from student or female researchers. Please feel free to contact the program committee (cfp@tetcon.org) or me (thaidn@gmail.com)…