Сейчас на форуме: rmn, Magister Yoda, vasilevradislav, tyns777, zombi-vadim (+5 невидимых) |
![]() |
eXeL@B —› Программирование —› Аналог recv |
Посл.ответ | Сообщение |
|
Создано: 27 августа 2008 21:02 · Личное сообщение · #1 Недавно начал ковырять одну очень интересную прогу, (не могу сказать какую), и суть в том, что внедряя свою библиотеку, мне прекрасно удаётся перехватить функцию send, и я знаю, что она отправляет серверу, но при перехвате функции recv ничего не происходит, т.к. прога её не использует. Внимание, вопрос ![]() ----- Stuck to the plan, always think that we would stand up, never ran. ![]() |
|
Создано: 27 августа 2008 21:06 · Личное сообщение · #2 |
|
Создано: 27 августа 2008 21:10 · Личное сообщение · #3 |
|
Создано: 27 августа 2008 21:14 · Личное сообщение · #4 |
|
Создано: 27 августа 2008 21:17 · Личное сообщение · #5 |
|
Создано: 27 августа 2008 21:29 · Личное сообщение · #6 |
|
Создано: 27 августа 2008 21:35 · Поправил: ARCHANGEL · Личное сообщение · #7 |
|
Создано: 27 августа 2008 21:38 · Поправил: arnix · Личное сообщение · #8 так, извиняюсь read/write и вправду только в юниксах, просто я недавно писал сервер под линукс и использовал read/write вместа recv/send вот и подумал что в виндах тоже можно, а оказывается: [url=http://www.cs.brown.edu/~scl/files/IPCWinNTUNIX.pdf ]http://www.cs.brown.edu/~scl/files/IPCWinNTUNIX.pdf [/url] "Some Berkeley socket applications use the _read() and _write() calls since UNIX treats sockets as files. Windows sockets support these functions, but some additional work on the part of the programmer is required. The socket must be opened as non-overlapped and must be converted to a file handle by calling _open_osfhandle(). This will return a file handle (i.e. an int) which can then be used with _read() and _write()." тойсть _read() и _write() использовать можно на сокетах но сначала нужно "конвертнуть сокет в файл" с помощью _open_osfhandle() ![]() |
|
Создано: 27 августа 2008 21:46 · Личное сообщение · #9 |
|
Создано: 27 августа 2008 21:57 · Личное сообщение · #10 Драйвер вешает аутпост, в эту тему без ОГРОМНОЙ надобности лучше не соваться. Для общего представления можешь почитать обход аутпоста на васме, там частично описано, что он хукает и как. Но вряд ли это тебе поможет. Сам я не игрался с сетевыми апи, могу только посоветовать посмотреть на экспорт, какие по именам функи ещё ближе+потрассить сам recv, возможно, натолкнёт на мысль, к какой низкоуровневой функции сводятся вызовы получения. ![]() |
|
Создано: 27 августа 2008 22:06 · Личное сообщение · #11 Archer чтоб узнать, какие функции хукает Outpost, много ума не надо, надо посмотреть по KDT перехват в ядре, например, через Rootkit Unhooker, плюс ещё перехват с помощью удалённых хуков в третьем кольце, и обойти это можно гораздо проще, чем на васме написано, притом не древнюю 4 версию, а новую 6. Но проблема в том, что если я просто полезу в ядро, то лес станет ещё темнее, а партизаны толще ![]() ----- Stuck to the plan, always think that we would stand up, never ran. ![]() |
|
Создано: 28 августа 2008 22:52 · Личное сообщение · #12 |
|
Создано: 29 августа 2008 01:33 · Личное сообщение · #13 |
|
Создано: 29 августа 2008 11:07 · Личное сообщение · #14 |
|
Создано: 04 сентября 2008 18:51 · Личное сообщение · #15 |
|
Создано: 05 сентября 2008 10:38 · Поправил: sss · Личное сообщение · #16 |
|
Создано: 05 сентября 2008 10:58 · Поправил: flamer · Личное сообщение · #17 ARCHANGEL пишет: как можно ещё принимать данные от удалённого сервера Высокоуровневых методов до фига. Это не полный список: winApi = Весь комплект из Winhttp.dll , wininet.dll ws ws2_32.dll mswsock.dll winsock.dll wsock32.dll ws2help.dll .NET Namespace: System.Net Assembly: System (in system.dll) А вообще, изначально посмотри на импорты. Возможно, имеет смысл узнать куда и по какому протоколу суется софтинка. Code:
![]() |
|
Создано: 08 сентября 2008 17:06 · Личное сообщение · #18 |
![]() |
eXeL@B —› Программирование —› Аналог recv |
Эта тема закрыта. Ответы больше не принимаются. |