banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thủ thuật reverse engineering Reverse Code trên Linux  XML
  [Discussion]   Reverse Code trên Linux 17/04/2011 15:29:37 (+0700) | #1 | 235633
Ar0
Member

[Minus]    0    [Plus]
Joined: 14/01/2011 23:20:26
Messages: 165
Offline
[Profile] [PM]
Nói về RE thì tài liệu RE trên Windows có nhiều, các công cụ cũng đầy đủ giúp cho việc RE có thể dễ dàng. Nhưng còn RE trên Linux thì thế nào nhỉ? Tớ thấy vấn đề này rất ít được bàn bạc trong HVA.

Vậy bạn nào có kinh nghiệm về RE trên Linux có thể chia sẽ kinh nghiệm được hay không? Ví dụ

- Các tài liệu hay về RE trên nền Linux
- Các công cụ hỗ trợ
- Các team chuyên RE trên Linux
- Các địa chỉ website hữu ích cho việc tìm hiểu RE trên Linux
- ...

Rất mong các bạn tham gia chủ đề để cùng trao đổi. smilie
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 17/04/2011 16:46:48 (+0700) | #2 | 235636
[Avatar]
thuongquoc
Member

[Minus]    0    [Plus]
Joined: 24/12/2010 05:56:50
Messages: 20
Offline
[Profile] [PM]
Bạn có thể chia xẻ với mọi người mục đích của bạn RE để làm gì không nhỉ? smilie
Tin tức Linux tiếng Việt - www.linuxnews.vn
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 17/04/2011 17:58:38 (+0700) | #3 | 235643
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]
Công cụ thì bạn thử Evan's Debugger xem: http://freshmeat.net/projects/edebugger/
Let's build on a great foundation!
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 17/04/2011 18:01:58 (+0700) | #4 | 235644
Ar0
Member

[Minus]    0    [Plus]
Joined: 14/01/2011 23:20:26
Messages: 165
Offline
[Profile] [PM]
Bạn có thể chia xẻ với mọi người mục đích của bạn RE để làm gì không nhỉ? 

Greybox testing !

Cậu có thể thôi cái trò hỏi những câu hỏi vô bổ và vớ vẩn như thế này được không? Hoặc là cậu nghĩ tôi đang nói đến RE với phương diện hạn hẹp là "crack" nên cố tìm cách định nghĩa cho tôi, nếu thế thì nhảm lắm vì tôi không cần, còn nếu cậu không biết gì về RE thì nên google để biết thêm nhiều hơn là đi tham gia topic bằng những câu hỏi vớ vẩn.

Mong là cậu suy nghĩ kĩ trước khi post bài tiếp theo. Không phải ai quan tâm đến RE cũng quan tâm đến crack đâu, và không phải ai quan tâm đến crack cũng đều là rookie đâu.

@ quanta: thanks quanta. Tớ cũng đang tìm hiểu thêm vài công cụ và ebook, khi nào có kết quả gì sẽ chia sẽ cho các bạn smilie
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 17/04/2011 19:06:20 (+0700) | #5 | 235646
[Avatar]
thuongquoc
Member

[Minus]    0    [Plus]
Joined: 24/12/2010 05:56:50
Messages: 20
Offline
[Profile] [PM]

Ar0 wrote:
Bạn có thể chia xẻ với mọi người mục đích của bạn RE để làm gì không nhỉ? 

Greybox testing !
Cậu có thể thôi cái trò hỏi những câu hỏi vô bổ và vớ vẩn như thế này được không? Hoặc là cậu nghĩ tôi đang nói đến RE với phương diện hạn hẹp là "crack" nên cố tìm cách định nghĩa cho tôi, nếu thế thì nhảm lắm vì tôi không cần, còn nếu cậu không biết gì về RE thì nên google để biết thêm nhiều hơn là đi tham gia topic bằng những câu hỏi vớ vẩn.
Mong là cậu suy nghĩ kĩ trước khi post bài tiếp theo. Không phải ai quan tâm đến RE cũng quan tâm đến crack đâu, và không phải ai quan tâm đến crack cũng đều là rookie đâu.
@ quanta: thanks quanta. Tớ cũng đang tìm hiểu thêm vài công cụ và ebook, khi nào có kết quả gì sẽ chia sẽ cho các bạn smilie 

smilie Có vẻ anh bạn này thiếu thiện chí, bất lịch sự khi giao tiếp với người khác nhỉ. Tôi hỏi vì tôi thấy đa số các ứng dụng trên Linux đều là nguồn mở. Tôi chỉ hỏi là để làm gì với thiện chí nhằm học hỏi thêm (tôi cũng là fan Linux) nhưng kết quả nhận được thì... Mở miệng ra chỉ toàn "sốc ốc" người khác. Con người anh tôi thấy No. 47 đánh giá vô cùng hợp lý, chính xác. Nếu không các Mod, Min đã ẩn hoặc xoá rồi cho No. 47 vài sẹo hoặc ban nick anh ấy rồi. smilie

Về việc crack hay không tôi chẳng quan tâm. Nó không phải là điều cấm trao đổi ở HVA.
Tôi theo dỗi nhiều chủ đề tham gia của anh bạn, kết quả nhận được là...thành phần***, không dám đụng. Ai nghĩ sao thì tự điền vào, tôi không biết phải điền sao smilie .

Chúc mừng anh có được tính trời phú! smilie
Tin tức Linux tiếng Việt - www.linuxnews.vn
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 17/04/2011 20:13:00 (+0700) | #6 | 235649
Ar0
Member

[Minus]    0    [Plus]
Joined: 14/01/2011 23:20:26
Messages: 165
Offline
[Profile] [PM]
Tham gia một topic kĩ thuât, chả thấy nói cái gì liên quan đến kĩ thuật ngoài chuyện cá nhân nhảm nhí và lôi chuyện ở ngoài vào nói. Nếu cậu cho rằng đó là cách thảo luận hay và mang lại cho cậu lợi ích thì cậu cứ việc làm thế. Nhưng trong topic này nếu không chia sẽ được những kinh nghiệm cậu đang có (không biết có không) hoặc có mà không muốn thì vui lòng đừng reply nữa, để ai có hứng thú tham gia. Làm ơn đưng để tôi thấy thêm một bài viết nhảm nhí của cậu trong topic này.

p/s: Fan linux hay không tôi không quan tâm, thời nay chạy theo thời đại nhiều lắm, thấy cái gì hay thì lao vào dùng cho oai, riết thấy ngán, đi đâu cũng toàn xưng fan này fan nọ, nhảm. smilie công nhận mình thiếu thiện chí với những người như cậu.

p/s 2: mình chưa bị warn cái nào =]]

Hy vọng các anh kienmanowar, TQN, quanta và các bạn quan tâm đến RE vào trao đổi và chia sẽ kinh nghiệm smilie
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 18/04/2011 09:54:20 (+0700) | #7 | 235692
zjm_zjm
Member

[Minus]    0    [Plus]
Joined: 26/07/2009 01:53:09
Messages: 159
Location: hhhhhh
Offline
[Profile] [PM] [WWW] [Yahoo!] [MSN] [ICQ]
Ar0 bình tĩnh nào, mình chưa thấy ai RE trên Linux, chắc do kiến thức còn hạn hẹp, hi hi.
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 18/04/2011 10:09:53 (+0700) | #8 | 235693
Ar0
Member

[Minus]    0    [Plus]
Joined: 14/01/2011 23:20:26
Messages: 165
Offline
[Profile] [PM]
Thực ra tớ thấy RE trên Linux phổ biến đấy chớ. RE có nghĩa là quá trình xây dựng lại mã gốc của chương trình, tuỳ vào trong mục đích của người muốn RE làm gì, có thể là crack, debug, ...

Như tớ nói ở trên rồi, trong trường hợp của tớ là Greybox testing. Kiểm tra lỗi phần mềm của những phần mềm không có source, và tham gia vài war games nhỏ nhỏ liên quan đến software exploitation attack, dĩ nhiên là software trên Linux và không public source.
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 18/04/2011 12:17:53 (+0700) | #9 | 235701
[Avatar]
WinDak
Researcher

Joined: 27/01/2002 11:15:00
Messages: 223
Offline
[Profile] [PM]
Bạn thử bắt đầu với gdb

/hvaonline/posts/list/31905.html
-- w~ --
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 18/04/2011 22:58:44 (+0700) | #10 | 235724
[Avatar]
kienmanowar
HVA Friend

Joined: 13/07/2004 05:57:34
Messages: 483
Offline
[Profile] [PM] [WWW]
Khà lâu quá mới lại ghé HVA smilie

Thực ra RE trên Linux có từ lâu rồi, nhóm CrackLatinos cũng có một số bài viết trình bày về RE trên Linux. Cá nhân tôi cũng có sưu tầm tài liệu nhưng giờ không nhớ nổi là nó nằm ở đâu smilie

Regards
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 18/04/2011 23:00:33 (+0700) | #11 | 235725
Mr.Khoai
Moderator

Joined: 27/06/2006 01:55:07
Messages: 954
Offline
[Profile] [PM]
Ar0,

Ý tưởng khá hay nhưng mà hơi lạ một chút. RE thường là quá trình "tái tạo" lại cách làm việc của một chương trình nào đó. Nhưng linux nói riêng và OSS nói chung thì chủ yếu người ta "Open Source", như vậy việc phải RE một binary là khá hiếm.

Cụ thể Ar0 muốn chơi binary exploit, hay là muốn RE các malware trên linux vân vân thì khoai nghĩ có vài công cụ sau khá căn bản và cần thiết:

- gdb hoặc xxgdb nếu bạn muốn có GUI
- strace, strings, hexdump, disasm và các tools hỗ trợ khác
- tcpdump/wireshark, HIDS và các utilities hỗ trợ việc theo dõi malware

khoai
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 19/04/2011 00:57:49 (+0700) | #12 | 235736
mrro
Administrator

Joined: 27/12/2001 05:07:00
Messages: 745
Offline
[Profile] [PM]
nói về debugger thì vài năm gần đây người ta có xu hướng chuyển qua xài các programmable debugger, tạm dịch là trình gỡ rối lập trình được.

ý tưởng của các programmable debugger có thể tóm gọn lại là nhét các thao tác cơ bản của một trình gỡ rối, ví dụ như dịch ra mã hợp ngữ, cài đặt/gỡ bỏ ngắt, thay đổi/xem xét bộ nhớ và con trỏ, vào thành một thư viện của một ngôn ngữ kịch bản nào đó (nên còn lại là scriptable debugger). lúc này thay vì dùng chung một trình gỡ rối là gdb cho tất cả các chương trình, thì bạn có thể viết ra một trình gỡ rối cụ thể dành riêng cho chương trình mà bạn đang muốn gỡ rối.

các programmable debugger đem đến các lợi ích như:

1. tự động hóa các thao tác gỡ rối. ví dụ như ngắt tại địa chỉ x, chép 512 bytes bộ nhớ mà eax đang trỏ đến, dịch ngược ra hợp ngữ và làm lại 100 lần để so sánh. ở góc độ nào đó, thì gdb script cũng làm được, nhưng mà thử tưởng tượng giờ bạn có nguyên một cái ngôn ngữ lập trình đầy đủ sức mạnh như Python và Ruby để hỗ trợ thì công việc sẽ đơn giản hơn nhiều. bạn chỉ cần viết một cái script nhỏ, chạy một phát là xong.

2. dễ viết các công cụ hỗ trợ. ví dụ như giờ bạn muốn viết một cái chương trình truy vết (hit tracer, process stalker) hoặc một cái memory fuzzer, hoặc một cái "pokefinder" để sửa bộ nhớ tự động... thì dùng mấy cái thư viện này sẽ làm công việc của bạn đơn giản hơn nhiều.

3. xuyên hệ điều hành. các thư viện này đều cung cấp một bộ API duy nhất cho tất cả hệ điều hành. cùng một loại script có thể chạy được với chương trình viết trên Windows, Linux và Mac.

một vài programmable debugger cho Linux:

1. http://visi.kenshoto.com/: viết bằng Python, dễ xài, nhưng ít tài liệu.

2. http://github.com/tduehr/ragweed: viết bằng Ruby. cái này của một vài đồng nghiệp của tôi làm, tôi chưa xài nên chưa biết thế nào, nhưng thấy họ tập trung phát triển nó dữ lắm, tài liệu cũng có vẻ tốt hơn visi.

hạn chế lớn nhất của các programmable debugger là tốc độ và sự hỗ trợ dành cho các nền tảng phần cứng khác nhau. nếu bạn cần tốc độ và cần hỗ trợ cho các loại phần cứng khác, thì hãy thử http://www.pintool.org/ hoặc http://dynamorio.org/. mấy cái framework này cũng tương tự như programmable debugger, chỉ khác ở chỗ là bạn phải viết bằng C/C++.

-m
http://tinsang.net

TetCon 2013 http://tetcon.org

Làm an toàn thông tin thì học gì?/hvaonline/posts/list/42133.html
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 02/07/2011 06:00:59 (+0700) | #13 | 242620
[Avatar]
xwhitelight
Member

[Minus]    0    [Plus]
Joined: 03/02/2011 01:39:33
Messages: 63
Location: HVA & REA
Offline
[Profile] [PM]
Em thì dùng IDA Free 5.0. Cài Wine để dùng.
Life in God Mode
[Up] [Print Copy]
  [Discussion]   Reverse Code trên Linux 03/07/2011 16:20:49 (+0700) | #14 | 242695
[Avatar]
van7hu
Member

[Minus]    0    [Plus]
Joined: 03/07/2010 02:38:47
Messages: 63
Location: Thuỷ điện Hoà Bình
Offline
[Profile] [PM]
Mới tập tành môn này.
Binary exploit bạn có thể vào: www.smashthestack.org
https://www.facebook.com/buivan.thu.94
Được phục vụ cho tổ quốc, đó là một niềm vinh hạnh lớn lao..
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|