Сейчас на форуме: zds, -Sanchez- (+9 невидимых)

 eXeL@B —› Основной форум —› старый тулз под вынь3.1
Посл.ответ Сообщение

Ранг: 397.0 (мудрец), 179thx
Активность: 0.170.1
Статус: Участник

Создано: 18 апреля 2018 18:35
· Личное сообщение · #1

прив. есть старый тулз, который работает под выньХП сп2. тулз это графическая оболочка, из которой вызывается вынь3.1 приложение (NE-executаble). кому не лень - прошу напомнить как проверить обращение x16 софты к лпт-портам. in/out команд я не нашел по адресам лпт-портов. через vxd вроде тоже.

-----
...или ты работаешь хорошо, или ты работаешь много...




Ранг: 590.4 (!), 408thx
Активность: 0.360.18
Статус: Модератор

Создано: 18 апреля 2018 18:59
· Личное сообщение · #2

CreateFile/ReadFile/WriteFile проверил?

-----
старый пень




Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 18 апреля 2018 19:22
· Личное сообщение · #3

r_e пишет:
CreateFile/ReadFile/WriteFile

И DeviceIoControl иже с ними. Оминь!




Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 18 апреля 2018 22:37
· Личное сообщение · #4

BfoX

Вы хотите юзать пар порт ?

Для этого не нужен старый софт.

В младшей версии системы вы можете открыть прямой I/O к портам(IOPL/IOPM), так как ось данный порт не использует, корреляций не будет. Это наверно можно сделать и в старших версиях, не видно проблем.

Добавлено спустя 6 минут
r_e

ТС нужен RAW-доступ походу к порту, а не системный протокол. Даже если драйвер и позволит обращаться с портом через эти абстракции, это будет слишком тормозно - как помню штатная скорость парпорта была 2Mb/s. При осевой обработке даже если это сработает профайл просядет на порядки.

-----
vx





Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 18 апреля 2018 23:51
· Личное сообщение · #5

Если на сях, то обычно использовалась команда outb, а не апи.

-----
EnJoy!





Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 18 апреля 2018 23:55
· Личное сообщение · #6

Jupiter

Для этого нужно открыть доступ к портам, в обход защиты. Либо сделать это из км.

-----
vx




Ранг: 431.7 (мудрец), 389thx
Активность: 0.730.32
Статус: Участник

Создано: 19 апреля 2018 00:36 · Поправил: dosprog
· Личное сообщение · #7

Win16-NE к vxd обращаться напрямую не может.
Нормально работала
HANDLE port = CreateFile("\\\\.\\LPT1", ....






Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 19 апреля 2018 01:29
· Личное сообщение · #8

difexacaw

Речь про Win 3.11 и New Executable (NE)
NT Virtual DOS Machine (NTVDM) в штатном режиме обрабатывала in/out на своей стороне


FoxB

Проверь команду out в дизасме или опкоды out:
Code:
  1. E6 ib    OUT imm8, AL         Output byte in AL to I/O port address imm8.
  2. E7 ib    OUT imm8, AX         Output word in AX to I/O port address imm8.
  3. E7 ib    OUT imm8, EAX        Output doubleword in EAX to I/O port address imm8.
  4. EE       OUT DX, AL     Output byte in AL to I/O port address in DX.
  5. EF       OUT DX, AX     Output word in AX to I/O port address in DX.
  6. EF       OUT DX, EAX    Output doubleword in EAX to I/O port address in DX.


-----
EnJoy!




Ранг: 397.0 (мудрец), 179thx
Активность: 0.170.1
Статус: Участник

Создано: 19 апреля 2018 16:55
· Личное сообщение · #9

Jupiter
r_e
dosprog
или не обращений к лпт-портам или я чего-то не понимаю.

суть вот в чем:
сам тулз х32 в виде графической оболочки юзет лпт-догнл. его я замулил, НО - как написано в первом посте - он запускает х16 прогу через командную строку. При этом если ключ реальный, то х16 прога делает расчет. если эмулятор, то х16 прога вывешивает ошибку "86 KLD-Fehler:" из ERR-файла.

х16 прицепил - может будут дебютные идеи?

ae21_19.04.2018_EXELAB.rU.tgz - MA_EGE.7z

-----
...или ты работаешь хорошо, или ты работаешь много...




Ранг: 431.7 (мудрец), 389thx
Активность: 0.730.32
Статус: Участник

Создано: 20 апреля 2018 01:28 · Поправил: dosprog
· Личное сообщение · #10

Непонятно, в чём заключается срабатывание защиты.
Сейчас запущенная в WinXP программа пишет в главном окне
Code:
  1. Err1
  2. Bitte bestatigen  ... {типа подтвердите}
Жмём Enter
Code:
  1. Cobus Concept Postprocessor (c) ... {и так далее, подсказка по параметрам командной строки}
  2. [...]
  3. Bitte bestatigen  ... {снова типа подтвердите}
- Тут после нажатия Enter программа просто висит.

--Добавлено--
Делалась с помощью библиотеки EasyWin, - лучше бы просто сделали консольной...

--Добавлено2--
аа. Эта Err1, наверное, и есть та ошибка, для которой расшифровка "86 KLD-Fehler:" из ERR-файла.

Code:
  1. Cobus Concept Postprocessor
  2.  
  3. Skip "Err1": (Не хватает каких-то там файлов...)
  4. ma_ege.exe
  5. 0006F10E: 0F E9
  6. 0006F10F: 8D 4A
  7. 0006F110: 49 01
  8. 0006F111: 01 90
  9.  
  10. Skip "Err86:"  (!!!!!!!!!!!!?????!!!!!!!)
  11. ma_ege.exe
  12. 0006F35A: 0F E9
  13. 0006F35B: 84 48
  14. 0006F35C: 47 01
  15. 0006F35D: 01 90
  16.  
  17. ; Тогда генерится "Err7" ...
  18.  


Нет LNG файла... И других тоже.



--Добавлено3--

.. Дальше не разбирался, но вот тут начинается работа с LPT:

Code:
  1. cseg29:137D C7 46 FC 40 00    mov     word ptr [bp+var_6+2], 40h 
  2. cseg29:1382 C7 46 FA 08 00    mov     word ptr [bp+var_6], 8
  3. ..................
  4. cseg29:1396 C4 5E FA          les     bx, [bp+var_6]
  5. cseg29:1399 26 8B 37          mov     si, es:[bx]
  6.  
  7. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; si = 03BCh (например)
  8. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; [0040:0008] = базовый адрес LPT1 и т.д.


..Кстати, в Win95 изменилась концепция работы с портами. К ним уже напрямую и не обратишься, они замаскированы.

))
[анегдот]
Чувак в сильном состоянии вваливается домой и орёт жене:
-- Быстро!! Тазик мне - буду рыгать.
Жена бегом приносит и подставляет таз.
Чел задумчиво стоит над ним, нагнувшись.
Жена -- "Давай рыгай!"
Муж -- "Всё. Концепция изменилась - я обосрался".
[/анегдот]

.. Moжно попытаться запустить упомянутый WIN32-лаунчер через [в свою очередь] лоадер, загружающий giveio.sys..
Но это в качестве эксперимента - такое не годится для современных систем.
Лучше поковырять этот WIN16 софт, имхо.



| Сообщение посчитали полезным: sefkrd

Ранг: 397.0 (мудрец), 179thx
Активность: 0.170.1
Статус: Участник

Создано: 20 апреля 2018 19:29
· Личное сообщение · #11

dosprog

спасибо за хинт и анекдот
осталось пропатчить

-----
...или ты работаешь хорошо, или ты работаешь много...




Ранг: 397.0 (мудрец), 179thx
Активность: 0.170.1
Статус: Участник

Создано: 24 апреля 2018 23:02
· Личное сообщение · #12

dosprog

теперь проблемас - в чем отлаживать. поднял w2ksp4, но там tdw борландовский не хочет запускаться - выдает ошибку. trw2000 хочет только w9x+.
что посоветуете?

-----
...или ты работаешь хорошо, или ты работаешь много...





Ранг: 307.9 (мудрец), 196thx
Активность: 0.180
Статус: Участник

Создано: 24 апреля 2018 23:44
· Личное сообщение · #13

BfoX
ImmunityDebugger ?

-----
Don_t hate the cracker - hate the code.




Ранг: 431.7 (мудрец), 389thx
Активность: 0.730.32
Статус: Участник

Создано: 25 апреля 2018 00:49 · Поправил: dosprog
· Личное сообщение · #14

BfoX пишет:
что посоветуете?

SICE.



Ранг: 397.0 (мудрец), 179thx
Активность: 0.170.1
Статус: Участник

Создано: 25 апреля 2018 17:15
· Личное сообщение · #15

Jupiter пишет:
NT Virtual DOS Machine (NTVDM) в штатном режиме обрабатывала in/out на своей стороне



что "покурить" в этом направлении?

-----
...или ты работаешь хорошо, или ты работаешь много...




Ранг: 431.7 (мудрец), 389thx
Активность: 0.730.32
Статус: Участник

Создано: 25 апреля 2018 19:45 · Поправил: dosprog
· Личное сообщение · #16

DDK.

Но имхо в данном конкретном случае это лишнее.
Если к софту не шёл специальный драйвер к защите..
То есть, если i/o осуществляет сам софт, то в ринг 0 можно вообще не лазить.
Там просто нечего делать.

.. и такое ощущение, что так с тем софтом и есть.





Ранг: 397.0 (мудрец), 179thx
Активность: 0.170.1
Статус: Участник

Создано: 25 апреля 2018 20:23
· Личное сообщение · #17

оба софта - и графическая оболочка х32 и выложенная тулза х16 работают на вынь хп сп2.
х32 работает с лпт через драйвер, х16 - через in/out.
отсюда и вопрос про х16

-----
...или ты работаешь хорошо, или ты работаешь много...




Ранг: 488.1 (мудрец), 272thx
Активность: 0.350
Статус: Участник

Создано: 26 апреля 2018 10:35 · Поправил: VodoleY
· Личное сообщение · #18

BfoX я как то качал комплект Watсom C .. Там дебагеры хоть и убогие.. но дебажат ДОС 16 32 бита.. подержка NE PE, поддержка хай мема и т.д.. я както заливал 600мб сюда (там сидюк полный комплект) но ща чтото найти не могу у себя

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....




Ранг: 397.0 (мудрец), 179thx
Активность: 0.170.1
Статус: Участник

Создано: 26 апреля 2018 16:39 · Поправил: BfoX
· Личное сообщение · #19

VodoleY пишет:
както заливал 600мб сюда

положу ссылку --> тут <--

Добавлено спустя 3 часа 34 минуты
VodoleY пишет:
но дебажат ДОС 16 32 бита.. подержка NE PE


не грузит он его =(((

Добавлено спустя 4 часа 13 минут
mysterio пишет:
ImmunityDebugger ?


под х32

-----
...или ты работаешь хорошо, или ты работаешь много...


| Сообщение посчитали полезным: VodoleY

Ранг: 431.7 (мудрец), 389thx
Активность: 0.730.32
Статус: Участник

Создано: 27 апреля 2018 01:02 · Поправил: dosprog
· Личное сообщение · #20

BfoX пишет:
не грузит он его =(((

Это нормально.
Под WinNT альтернативы SICE для этой задачи нет.

Если вещь не сильно секретная и не очень монстрообразных размеров,
то как бы на неё взглянуть целиком? Можно в в ЛС.






Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 28 апреля 2018 13:21
· Личное сообщение · #21

BfoX
Попробуй запустить через встроенный отладчик Bochs, он точно ничего не упустит:
- http://bochs.sourceforge.net/doc/docbook/user/internal-debugger.html
- http://bochs.sourceforge.net/doc/docbook/development/debugger-advanced.html

Для использования гуя может потребоваться настройка сборки:
Code:
  1. configure --enable-debugger --enable-disasm --enable-debugger-gui


-----
EnJoy!




Ранг: 488.1 (мудрец), 272thx
Активность: 0.350
Статус: Участник

Создано: 28 апреля 2018 19:52 · Поправил: VodoleY
· Личное сообщение · #22

Jupiter бош нифига не вариант.. поверь.. бош это эмуль.. причем не самый лучший.. на 7ке он будет умирать адски.. под хр.. он ток дос имиджи нормально дебажит
досбокс круче боша на порядок, но это тулзы для других дел вообщето..

Добавлено спустя 2 минуты
BfoX покопайте еще комплект ватком с... там несколько разных дебагеров в комплекте если мне память не изменяет. в свое время с NE 32 под дос он меня круто спас

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....





Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 29 апреля 2018 09:52
· Личное сообщение · #23

VodoleY
На маке Bochs вполне сносно работает, отладчик с простыми задачами справляется.
И как эмуль Bochs тоже норм. На DOSbox я виндовые проги, как у ТС, не запускал.

-----
EnJoy!




Ранг: 488.1 (мудрец), 272thx
Активность: 0.350
Статус: Участник

Создано: 30 апреля 2018 07:59
· Личное сообщение · #24

Jupiter пишет:
На DOSbox я виндовые проги, как у ТС, не запускал.

и не стоит начинать.. Bochs хороший вариант когда надо отдебажить бут, или загрузку линух образа. как отладчик прог.. это не самый лучший вариант. если уж смотреть в эту сторону.. то тогда уже вмварю дебажить идой или гдб, куда стабильней выйдет

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....




Ранг: 397.0 (мудрец), 179thx
Активность: 0.170.1
Статус: Участник

Создано: 30 апреля 2018 09:14
· Личное сообщение · #25

поставил в win2k от студии sice 4.3.2
поставил бряки на обращения к портам, при запуске из х32 в виде графической оболочки х16 проги через командную строку айс не всплывает и сама прога х16 висит. в окне айса "Emulating inst: 00000XXX".

dosprog
попробую сделать мин. набор

-----
...или ты работаешь хорошо, или ты работаешь много...




Ранг: 431.7 (мудрец), 389thx
Активность: 0.730.32
Статус: Участник

Создано: 30 апреля 2018 12:06 · Поправил: dosprog
· Личное сообщение · #26

BfoX пишет:
айс не всплывает и сама прога х16 висит.


Во всяком случае, брейк в SI на NE.0013415A (это MZ.0006F35A) - срабатывает..
А на найденных ранее фрагментах с <in/out> наоборот, не срабатывает,
- потому что туда выполнение не доходит.






Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 30 апреля 2018 17:24
· Личное сообщение · #27

VodoleY
Так я говорю про связку встроенного отладчика Bochs + IDA, при чём тут DOSbox и VMware я так и не понял.
Когда мне надо было отладить какую-то древность, я использовал IDA + Bochs + DosWin32 от Юрия Харона (чтобы не заморачиваться с виндой), всё отлично дебажилось при помощи Bochs, каких-то супер сложностей я не заметил.

-----
EnJoy!


| Сообщение посчитали полезным: VodoleY
 eXeL@B —› Основной форум —› старый тулз под вынь3.1
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати