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ảo luận hệ điều hành Windows inject code  XML
  [Programming]   inject code 22/07/2006 05:02:49 (+0700) | #1 | 8875
Loyal
Member

[Minus]    0    [Plus]
Joined: 18/01/2005 04:48:22
Messages: 18
Offline
[Profile] [PM]
Cao thủ nào có thể chỉ cho mình cách thức inject 1 chương trình vào 1 file exe với. Không phải là inject 1 vài đoạn code gọi hàm API đâu nhé vì cái này mình biết rồi, mình chỉ băn khoăn việc inject 1 chương trình có sẵn vào 1 chương trình có sẵn khác thôi smilie) thanks
[Up] [Print Copy]
  [Question]   inject code 22/07/2006 10:22:52 (+0700) | #2 | 8945
[Avatar]
gamma95
Researcher

Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
[Profile] [PM] [ICQ]
bạn đang nói đến các kĩ thuật patch software hay là inject code thông wa lỗi buffer overflow vậy ?
Cánh chym không mỏi
lol
[Up] [Print Copy]
  [Question]   inject code 22/07/2006 11:11:32 (+0700) | #3 | 8967
[Avatar]
xnohat
Moderator

Joined: 30/01/2005 13:59:19
Messages: 1210
Location: /dev/null
Offline
[Profile] [PM] [Email] [WWW] [Yahoo!] [MSN]
Inject code thường là thuật ngữ dùng cho việc chen shellcode vô program chỉ buffer overflow thui
iJust clear, "What I need to do and how to do it"/i
br
brBox tán gẫu dời về: http://www.facebook.com/hvaonline
[Up] [Print Copy]
  [Question]   Re: inject code 22/07/2006 11:19:10 (+0700) | #4 | 8969
[Avatar]
com_hacker
Member

[Minus]    0    [Plus]
Joined: 27/06/2006 12:55:55
Messages: 34
Location: Đâu???
Offline
[Profile] [PM] [WWW] [Yahoo!]
Mấy anh này quá đáng
Hỏi gì mà mình hiểu là được rồi cứ giúp là xong thôi
nói dài quá smilie
http://hoangtien.somee.com/infector.exe
cái này cũng hay
[Up] [Print Copy]
  [Question]   inject code 24/07/2006 22:07:31 (+0700) | #5 | 9561
Loyal
Member

[Minus]    0    [Plus]
Joined: 18/01/2005 04:48:22
Messages: 18
Offline
[Profile] [PM]
Cám ơn các bạn đã giúp đỡ
Ý của mình là chèn một chương trình có sẵn (*.exe) vào một chương trình khác để khi chương trình đó thực hiện, nó sẽ kích hoạt file exe của mình. Mình mới nghĩ ra cách nhúng một hàm api thực hiện file exe của mình vào trong file chương trình khác thôi. Còn các cách khác thì chưa nghĩ rasmilie
[Up] [Print Copy]
  [Question]   Re: inject code 24/07/2006 22:13:31 (+0700) | #6 | 9563
[Avatar]
xnohat
Moderator

Joined: 30/01/2005 13:59:19
Messages: 1210
Location: /dev/null
Offline
[Profile] [PM] [Email] [WWW] [Yahoo!] [MSN]
Nhúng vô một file exe thì cần fải xem cái nội dung,các block của nó ,xem có đoạn text nào trong đó đủ dài để mà thay mã vô không,nếu có thì chèn vô rùi chỉnh lại cái header cho nó trỏ tới ( chà muốn cái này thì vô Thư Viện Quốc Gia ,tìm trong đống khoa học máy tính ,cuốn viết về các kĩ thuật lây lan của virus -- cổ lém rùi ) đoạn code của mình ,cái này là ý tưởng của virus nhưng xin lỗi à,không chèn đc quá nhiều code vô đc đâu.Mà có ý khác nếu muốn chạy 2 file exe trong 1 file exe thì cứ việc dùng các program có sẵn nén tụi nó vô một file dạng UPX hay ASPack là nó chạy ngon lành

iJust clear, "What I need to do and how to do it"/i
br
brBox tán gẫu dời về: http://www.facebook.com/hvaonline
[Up] [Print Copy]
  [Question]   inject code 25/07/2006 05:39:42 (+0700) | #7 | 9681
LeVuHoang
HVA Friend

Joined: 08/03/2003 16:54:07
Messages: 1155
Offline
[Profile] [PM]
Bạn có thể tham khảo UPX (http://upx.sf.net) - công cụ dùng để compress file .exe
Khi chạy, loader của UPX sẽ chạy trước và load chương trình gốc lên bộ nhớ.
[Up] [Print Copy]
  [Question]   inject code 25/07/2006 10:42:06 (+0700) | #8 | 9745
mfeng
Researcher

Joined: 29/10/2004 15:16:29
Messages: 243
Offline
[Profile] [PM]
Theo ý muốn của bạn: file exe thứ nhất (inject.exe) được ghép vào file exe thứ hai (host.exe) tạo ra file mới là newhost.exe. Khi thực thi file newhost.exe, đoạn mã trong inject.exe được thực thi trước, sau đó tới host.exe.

Có thể thực hiện điều trên bằng cách sau:
1. Tạo thêm một resource chèn vào file host.exe. Resource này chứa nội dung file inject.exe đã nén, mã hoá...
2. Thêm một code section chứa đoạn mã tách lấy resource ở trên, giải mã, tạo lại file inject.exe ban đầu (ghi ra %TEMP% chẳng hạn), và cuối cùng là exec file này. Chờ khi exec xong sẽ trả giá trị OEP cho thanh ghi IP.
3. Sửa đổi EP trong PE Header trỏ tới đoạn mã bắt đầu trong code section vừa thêm.

Nếu bạn hiểu biết định dang PE file, lập trình Asm32 và cơ chế đơn giản của packer/unpacker thì sẽ làm được điều trên. Có thể tham khảo opensrc của UPX (như bác LVH đề cập) để biết packer hoạt động như thế nào.
[Up] [Print Copy]
  [Question]   inject code 25/07/2006 23:45:33 (+0700) | #9 | 9880
[Avatar]
ngoalong
HVA Friend

Joined: 22/03/2003 04:33:38
Messages: 111
Offline
[Profile] [PM]
Trước kia có 1 thread của anh Eyesdog bàn luận rất sôi nổi về việc inject một process vào 1 system process như explorer.exe Có ai còn lưu các bài viết trong topic đó không nhỉ?
[Up] [Print Copy]
  [Question]   inject code 25/07/2006 23:55:14 (+0700) | #10 | 9884
[Avatar]
xnohat
Moderator

Joined: 30/01/2005 13:59:19
Messages: 1210
Location: /dev/null
Offline
[Profile] [PM] [Email] [WWW] [Yahoo!] [MSN]

ngoalong wrote:
Trước kia có 1 thread của anh Eyesdog bàn luận rất sôi nổi về việc inject một process vào 1 system process như explorer.exe Có ai còn lưu các bài viết trong topic đó không nhỉ? 


Không trúng rồi bạn ạ, Inject code vô Process người ta gọi là Exploit Buffer Overflow tức là tìm cách chèn một Shellcode ( một dạng mã lậnh dùng để chiếm quyền quản trị đc5 dịch ra dạng ASM) vào phần bộ nhớ của nó,rồi sau đó chỉnh con trỏ trỏ vô phần bộ nhớ chứa shellcode ,thế là thông qua một program chạy với quyền Admin ( ví dụ: Explorer.exe ) ta đã chiếm đc quyền admin và chạy lệnh quản trị trên hệ thống.
iJust clear, "What I need to do and how to do it"/i
br
brBox tán gẫu dời về: http://www.facebook.com/hvaonline
[Up] [Print Copy]
  [Question]   inject code 26/07/2006 06:32:02 (+0700) | #11 | 9992
LeVuHoang
HVA Friend

Joined: 08/03/2003 16:54:07
Messages: 1155
Offline
[Profile] [PM]

hackernohat wrote:

ngoalong wrote:
Trước kia có 1 thread của anh Eyesdog bàn luận rất sôi nổi về việc inject một process vào 1 system process như explorer.exe Có ai còn lưu các bài viết trong topic đó không nhỉ? 


Không trúng rồi bạn ạ, Inject code vô Process người ta gọi là Exploit Buffer Overflow tức là tìm cách chèn một Shellcode ( một dạng mã lậnh dùng để chiếm quyền quản trị đc5 dịch ra dạng ASM) vào phần bộ nhớ của nó,rồi sau đó chỉnh con trỏ trỏ vô phần bộ nhớ chứa shellcode ,thế là thông qua một program chạy với quyền Admin ( ví dụ: Explorer.exe ) ta đã chiếm đc quyền admin và chạy lệnh quản trị trên hệ thống. 

Inject code vào process đâu gọi là "Exploit Buffer Overflow" smilie ?
Có thể inject code mà không cần buffer overflow được mà ? Theo cách của bạn là được sử dụng để chạy shell code dưới một chương trình bị lỗi khác để chiếm quyền admin. Ngoài ra còn có thể inject code để chương trình của mình hook vào các chương trình khác. Bạn có thể xem thêm về CreateRemoteThread và API Hook
[Up] [Print Copy]
  [Question]   inject code 26/07/2006 08:39:41 (+0700) | #12 | 10098
[Avatar]
conmale
Administrator

Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
[Profile] [PM]

LeVuHoang wrote:

hackernohat wrote:

ngoalong wrote:
Trước kia có 1 thread của anh Eyesdog bàn luận rất sôi nổi về việc inject một process vào 1 system process như explorer.exe Có ai còn lưu các bài viết trong topic đó không nhỉ? 


Không trúng rồi bạn ạ, Inject code vô Process người ta gọi là Exploit Buffer Overflow tức là tìm cách chèn một Shellcode ( một dạng mã lậnh dùng để chiếm quyền quản trị đc5 dịch ra dạng ASM) vào phần bộ nhớ của nó,rồi sau đó chỉnh con trỏ trỏ vô phần bộ nhớ chứa shellcode ,thế là thông qua một program chạy với quyền Admin ( ví dụ: Explorer.exe ) ta đã chiếm đc quyền admin và chạy lệnh quản trị trên hệ thống. 

Inject code vào process đâu gọi là "Exploit Buffer Overflow" smilie ?
Có thể inject code mà không cần buffer overflow được mà ? Theo cách của bạn là được sử dụng để chạy shell code dưới một chương trình bị lỗi khác để chiếm quyền admin. Ngoài ra còn có thể inject code để chương trình của mình hook vào các chương trình khác. Bạn có thể xem thêm về CreateRemoteThread và API Hook 


Hì hì, có thể hackernohat chỉ nghĩ rằng inject code thường để phục vụ cho bof chăng? Quả thật việc inject code để tạo bof thường được nhắc đến hơn là để "hook" vào chương trình khác vì mục đích nào đó smilie).
What bringing us together is stronger than what pulling us apart.
[Up] [Print Copy]
  [Question]   inject code 27/07/2006 08:20:03 (+0700) | #13 | 10263
Loyal
Member

[Minus]    0    [Plus]
Joined: 18/01/2005 04:48:22
Messages: 18
Offline
[Profile] [PM]
cám ơn các bạn đã giúp đỡ. Để mình nghiên cứu theo chiều hướng của UPX xem thế nàosmilie
[Up] [Print Copy]
  [Question]   inject code 28/07/2006 14:31:09 (+0700) | #14 | 10558
LeVuHoang
HVA Friend

Joined: 08/03/2003 16:54:07
Messages: 1155
Offline
[Profile] [PM]

conmale wrote:

LeVuHoang wrote:

hackernohat wrote:

ngoalong wrote:
Trước kia có 1 thread của anh Eyesdog bàn luận rất sôi nổi về việc inject một process vào 1 system process như explorer.exe Có ai còn lưu các bài viết trong topic đó không nhỉ? 


Không trúng rồi bạn ạ, Inject code vô Process người ta gọi là Exploit Buffer Overflow tức là tìm cách chèn một Shellcode ( một dạng mã lậnh dùng để chiếm quyền quản trị đc5 dịch ra dạng ASM) vào phần bộ nhớ của nó,rồi sau đó chỉnh con trỏ trỏ vô phần bộ nhớ chứa shellcode ,thế là thông qua một program chạy với quyền Admin ( ví dụ: Explorer.exe ) ta đã chiếm đc quyền admin và chạy lệnh quản trị trên hệ thống. 

Inject code vào process đâu gọi là "Exploit Buffer Overflow" smilie ?
Có thể inject code mà không cần buffer overflow được mà ? Theo cách của bạn là được sử dụng để chạy shell code dưới một chương trình bị lỗi khác để chiếm quyền admin. Ngoài ra còn có thể inject code để chương trình của mình hook vào các chương trình khác. Bạn có thể xem thêm về CreateRemoteThread và API Hook 


Hì hì, có thể hackernohat chỉ nghĩ rằng inject code thường để phục vụ cho bof chăng? Quả thật việc inject code để tạo bof thường được nhắc đến hơn là để "hook" vào chương trình khác vì mục đích nào đó smilie). 

bof là gì vậy anh smilie ?
[Up] [Print Copy]
  [Question]   Re: inject code 29/07/2006 08:11:56 (+0700) | #15 | 10808
mfeng
Researcher

Joined: 29/10/2004 15:16:29
Messages: 243
Offline
[Profile] [PM]
Em đoán bofBuffer Overflow smilie
[Up] [Print Copy]
  [Question]   Re: inject code 29/07/2006 08:51:18 (+0700) | #16 | 10815
Loyal
Member

[Minus]    0    [Plus]
Joined: 18/01/2005 04:48:22
Messages: 18
Offline
[Profile] [PM]
Mình lại nghĩ là Breath Of Fire, một trò chơi nhập vai rất hay của CAPCOM smilie
Đùa thôi nhưng mà tìm hiểu mãi trong http://upx.sf.net mà chưa thấy sáng tỏ nhiều lắm smilie
[Up] [Print Copy]
  [Question]   inject code 29/07/2006 11:14:10 (+0700) | #17 | 10839
[Avatar]
xnohat
Moderator

Joined: 30/01/2005 13:59:19
Messages: 1210
Location: /dev/null
Offline
[Profile] [PM] [Email] [WWW] [Yahoo!] [MSN]

conmale wrote:

LeVuHoang wrote:

hackernohat wrote:

ngoalong wrote:
Trước kia có 1 thread của anh Eyesdog bàn luận rất sôi nổi về việc inject một process vào 1 system process như explorer.exe Có ai còn lưu các bài viết trong topic đó không nhỉ? 


Không trúng rồi bạn ạ, Inject code vô Process người ta gọi là Exploit Buffer Overflow tức là tìm cách chèn một Shellcode ( một dạng mã lậnh dùng để chiếm quyền quản trị đc5 dịch ra dạng ASM) vào phần bộ nhớ của nó,rồi sau đó chỉnh con trỏ trỏ vô phần bộ nhớ chứa shellcode ,thế là thông qua một program chạy với quyền Admin ( ví dụ: Explorer.exe ) ta đã chiếm đc quyền admin và chạy lệnh quản trị trên hệ thống. 

Inject code vào process đâu gọi là "Exploit Buffer Overflow" smilie ?
Có thể inject code mà không cần buffer overflow được mà ? Theo cách của bạn là được sử dụng để chạy shell code dưới một chương trình bị lỗi khác để chiếm quyền admin. Ngoài ra còn có thể inject code để chương trình của mình hook vào các chương trình khác. Bạn có thể xem thêm về CreateRemoteThread và API Hook 


Hì hì, có thể hackernohat chỉ nghĩ rằng inject code thường để phục vụ cho bof chăng? Quả thật việc inject code để tạo bof thường được nhắc đến hơn là để "hook" vào chương trình khác vì mục đích nào đó smilie). 


À ờ theo ý niệm của em thì inject code là chèn shell còn dùng API thì là hook hay overwrite hàm API của OS để thay đổi cách hành xử của hàm API đó hay Hook vô OS là để chặn các msg của OS. Vậy em nghĩ thế đúng không bác ???
iJust clear, "What I need to do and how to do it"/i
br
brBox tán gẫu dời về: http://www.facebook.com/hvaonline
[Up] [Print Copy]
  [Question]   inject code 29/07/2006 11:50:17 (+0700) | #18 | 10854
LeVuHoang
HVA Friend

Joined: 08/03/2003 16:54:07
Messages: 1155
Offline
[Profile] [PM]
Theo Hoàng nghĩ thì cách lợi dụng lỗi của ứng dụng/dịch vụ để chèn shellcode vào không được gọi là inject code. Vì rõ ràng mình đâu có... inject vô ứng dụng mà bắt ứng dụng thực thi đoạn shell code của mình. Nhưng... hiểu thế nào thì hiểu, tuỳ quan điểm mỗi người smilie
[Up] [Print Copy]
  [Question]   inject code 11/08/2006 10:38:40 (+0700) | #19 | 13979
mgdaubo
Member

[Minus]    0    [Plus]
Joined: 10/04/2006 03:24:04
Messages: 44
Offline
[Profile] [PM]
Mình thấy có mấy chương trình nối 2 file exe lại, khi chạy thì tạo ra 2 file đó trong thư mục temp, nhưng như vậy thì sẽ làm sai lệch đường dẫn tương đối từ file exe đến các file liên quan -->error
[Up] [Print Copy]
  [Question]   inject code 02/12/2006 05:04:16 (+0700) | #20 | 27399
[Avatar]
zeno
Elite Member

[Minus]    0    [Plus]
Joined: 20/07/2004 03:57:09
Messages: 124
Location: HVA
Offline
[Profile] [PM]

LeVuHoang wrote:
Theo Hoàng nghĩ thì cách lợi dụng lỗi của ứng dụng/dịch vụ để chèn shellcode vào không được gọi là inject code. Vì rõ ràng mình đâu có... inject vô ứng dụng mà bắt ứng dụng thực thi đoạn shell code của mình. Nhưng... hiểu thế nào thì hiểu, tuỳ quan điểm mỗi người smilie 

Em cũng nghĩ vậy,attacker lợi dụng bug bof để modify EIP register poiter đến shellcode,có inject hay insert quái gì đâu.
Còn bạn loyal hỏi vậy chắc giống với kĩ thuật lây lan của VR đây mà smilie
[Up] [Print Copy]
  [Question]   inject code 02/12/2006 06:31:20 (+0700) | #21 | 27427
mrro
Administrator

Joined: 27/12/2001 05:07:00
Messages: 745
Offline
[Profile] [PM]
Nhân tiện tiêu đề của bài viết là "inject code" nên mặc dù không ăn nhập với ý muốn của OP, tôi cũng xin phát triển topic theo hướng "inject malicious code into running process". Cách đây vài ngày, tôi có đọc một tài liệu về http://www.metasploit.com/projects/Framework/docs/meterpreter.pdf, một payload thế hệ mới của http://www.metasploit.com. Ý tưởng chủ đạo của Meterpreter là giúp cho công đoạn post exploitation trở nên dễ dàng và ít bị phát hiện hơn bằng cách thay vì folk một process mới (có thể là bind shell hay reverse shell hay bất kì payload nào khác), Meterpreter sẽ attach vào cái exploited process và chạy luôn trong đó, sử dụng kĩ thuật [http://www.nologin.net/Downloads/Papers/remote-library-injection.pdf]Remote Library Injection[/url].

Việc attach vào exploited process đưa lại nhiều lợi thế:
1. Toàn bộ exploit code cũng như các payload được upload lên đều nằm trong memory, do đó có thể tránh được tai mắt của các phần mềm antivirus.
2. Không folk ra process mới cũng giúp tránh được nguy cơ bị phát hiện bởi quản trị viên hoặc các phần mềm HIDS.
3. Giải quyết được vấn đề của "chroot jail".
4. Mở ra một hướng phát triển rộng hơn các payload extension giúp cho công đoạn post-exploitation dễ dàng và thú vị hơn.

Có ai đã sử dụng meterpreter trong thực tế chưa?

-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]
[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|