| Сейчас на форуме: ==DJ==[ZLO], Magister Yoda, Rio (+6 невидимых) |
| eXeL@B —› Основной форум —› есть такая прога - ShadowUser |
| Посл.ответ | Сообщение |
|
|
Создано: 08 января 2005 02:23 · Личное сообщение · #1 Привет ! Всех с рождеством ! Так вот есть такая прога - ShadowUser, кстати довольно полезная прога лежит тут: www.shadowstor.com/ Я как порядочный скачал программу и не смотря на то, что она не очень известная даже нашел к ней лекарство... вот... Потом как-то перевел время на пару месяцев вперед, и программа отказалась работать. Понятное дело - недоломали. Решил сам этим заняться, кое-какой опыт есть, но в этом случае моего опыта явно не достаточно Поэтому обращаюсь к вам за помощью. Думаю программа может пригодится не только мне.
Итак что имеем: Программа состоит из 4 файлов: ShadowUser.exe suatshut.exe shadowapi.dll shadow.sys запускаю ShadowUser.exe и вижу окошко с кнопкой <Activate>, ищу место проверки кода активации почти нашел то что искал в файле shadowapi.dll выглядит это так: ... * Reference To: KERNEL32.DeviceIoControl, Ord:0083h :10001279 Call dword ptr [10003034] :1000127F test eax, eax :10001281 jne 100012AF ... Это обращение к драйверу shadow.sys, в этом месте ему передается имя и код активизации, а он решает чего с ними дальше делать и выдает результат да/нет. Беда в том, что я не знаю как дальше трассировать, в каком месте ставить бряк, какая функция драйвера вызывается после обращения к нему... Инфа команды "driver" в айсе что-то как-то мне не помогла. На всякий случай, вариант занопить jne не катит, нужно ломать на уровне драйвера. Прошу если у кого-то есть такой опыт помочь, программа очень нужная. ![]() |
|
|
Создано: 08 января 2005 14:50 · Личное сообщение · #2 Народ, почитав ваши статьи, я не верю, что здесь нету тех, кто ножет помочь с этой проблемой. Понимаю, я только что зарегился, как раз сейчас пробегала гадость под под названием SourceFormatX, осторожными надо быть. Но это не тот случай ! Cсылки на эту программу можно найти на www.securitylab.ru, www.nnm.ru, www.bestfilez.net. Но я и не прошу ее скачивать, хоть и рекомендую, просто подскажите плз куда мне дальше копать. ЗЫ: кстати под этой программкой из-за SourceFormatX винда бы не упала и без виртуальной машины, можно даже самые злые вири запускать, ни чего не случится
![]() |
|
|
Создано: 08 января 2005 14:59 · Личное сообщение · #3 |
|
|
Создано: 08 января 2005 15:31 · Личное сообщение · #4 На полном серьезе Принцип работы следующий. При активированном ShadowMode все изменения которые происходят в файловой системе записываются в свободные области и теряются при перезагрузке, можно снести нафиг любимые mp3 напр. перезагрузиться и они опять на месте Естественно можно настроить исключения, ну скажем папки которые не будут защищены, или отдельные файлы. Ну или скажем при ситуации когда в этом режиме нужно сохранить файл в менюшке есть пункт "commit", нажимаешь и он реально сбрасывается на диск. Серьезных глюков или тормозов при работе замечено не было. В целом практически непробиваемая защита Полезно когда нужно инсталлить программки на попробовать, не боясь, что они загадят систему, но это так... в узком смысле
![]() |
|
|
Создано: 08 января 2005 15:35 · Личное сообщение · #5 |
|
|
Создано: 08 января 2005 16:20 · Личное сообщение · #6 заранее сори за флуд, но все равно ты ее может быть немного позже скачаешь Я тоже не сразу скачал, но мысль из головы не вылазила. Беда в том, что два патча которые я к ней нашел, оба правят ехе-шник, что в данном случае ну совсем не то, что нужно. Вобщем то и проблем взламывать ее нет, ни чем не запакована, на айс не реагирует написана на vc++ ну просто сказка ! И на тебе такой ступор... а драйвер не маленький, чтобы весь асм перелопатить, хз как его остановить именно в нужном месте
![]() |
|
|
Создано: 09 января 2005 00:09 · Личное сообщение · #7 |
|
|
Создано: 09 января 2005 03:12 · Личное сообщение · #8 |
|
|
Создано: 09 января 2005 03:30 · Личное сообщение · #9 |
|
|
Создано: 09 января 2005 04:41 · Личное сообщение · #10 WELL нет, только триал, в тех патчах, что я скачивал как я понимаю просто убиралось окошко с напоминанием, в триальный период программа работает полноценно gloom есть, но bpx getwindowtext (a, w) тебе ни чего не дадут, там как-то иначе серийник берется, хз как может хук вешают, я через w32dasm нашел. даешь комады: addr shadowuser bpx 10001279 и вываливаешься на проверку кода (он в стеке), можешь посмотреть что ты ввел так: db bpx ![]() |
|
|
Создано: 09 января 2005 04:44 · Личное сообщение · #11 |
|
|
Создано: 09 января 2005 05:36 · Личное сообщение · #12 |
|
|
Создано: 10 января 2005 06:48 · Личное сообщение · #13 |
|
|
Создано: 10 января 2005 10:58 · Поправил: assassin · Личное сообщение · #14 |
|
|
Создано: 10 января 2005 22:13 · Личное сообщение · #15 |
|
|
Создано: 11 января 2005 03:46 · Личное сообщение · #16 |
|
|
Создано: 11 января 2005 12:25 · Поправил: gl2 · Личное сообщение · #17 Ок, самое интересное находится в файле shadow.sys: PAGE:0001F396 call sub_1F11E ; Кодирование UserName PAGE:0001F39B mov esi, eax ; < - значение кодированного UserName PAGE:0001F39D lea eax, [ebp+var_C] ; < - Activation Code PAGE:0001F3A0 push eax PAGE:0001F3A1 call sub_1F30A ; Кодирование Activation Code PAGE:0001F3A6 cmp [ebp+var_C], esi ; Должно совпадать PAGE:0001F3A9 pop esi PAGE:0001F3AA jnz short loc_1F3C0 ; Наверное если занопить, то все будетДля кейгена предпологается длина UserName < 8 (Delphi):
CodeBuf: array[1..$ff*4] of byte = ...
procedure TfMain.Button1Click(Sender: TObject);
var
Res1: DWORD;
i: integer;
Name: string;
begin
Name:=Edit1.Text;
i:=Length(Name);
asm
pushad
mov eax, $ff
mov esi, -1
mov ecx, [i]
mov edx, Name
@@10:
movzx ebx, byte ptr [edx]
mov edi, esi
and edi, eax
xor edi, ebx
shr esi, 8
mov edi, dword ptr [CodeBuf+edi*4]
xor esi, edi
inc edx
dec ecx
jne @@10;
mov eax, esi
not eax
mov [Res1], eax
popad
end;
Edit3.Text:=GetCode(Res1);
end;
function TfMain.GetCode(Cach: DWORD): string;
type
TArr10 = array[1..10] of byte;
const
Order: TArr10 = (8, 9, 7, 6, 4, 5, 3, 2, 10, 1);
CR: TArr10 = ($4f, $63, $01, $40, $89, $24, $d5, $b1, $d8, $b0);
var
tmp1: TArr10;
tmp2: TArr10;
acode: TArr10;
i: integer;
begin
PDWORD(@tmp1[1])^:=Cach;
for i:=5 to 10 do tmp1[i]:=Random($ff);
for i:=1 to 10 do
tmp2[Order[i]]:=tmp1[i];
for i:=1 to 10 do
acode[i]:=tmp2[i] xor CR[i];
Result:=Result+IntToHex(acode[01], 2);
Result:=Result+IntToHex(acode[02], 2);
Result:=Result+'-';
Result:=Result+IntToHex(acode[03], 2);
Result:=Result+IntToHex(acode[04], 2);
Result:=Result+'-';
Result:=Result+IntToHex(acode[05], 2);
Result:=Result+IntToHex(acode[06], 2);
Result:=Result+'-';
Result:=Result+IntToHex(acode[07], 2);
Result:=Result+IntToHex(acode[08], 2);
Result:=Result+'-';
Result:=Result+IntToHex(acode[09], 2);
Result:=Result+IntToHex(acode[10], 2);{}
end;
Массив CodeBuf см. по адресу 1B740, в shadow.sys обращение выглядит так:
PAGE:0001F21E mov edi, dword_1B740[edi*4]Вообще, сам алгоритм шифрования довольно простой, плохо, что на разных машинах, разный ключ шифрования. Я все-таки попытаюсь сделать универсальный кейген ![]() |
|
|
Создано: 12 января 2005 01:15 · Личное сообщение · #18 |
|
|
Создано: 12 января 2005 02:40 · Личное сообщение · #19 |
|
|
Создано: 12 января 2005 02:54 · Личное сообщение · #20 мда...
ну извините, обозвал как смог Nitrogen пишет: попробуй: Licensed to: Nitrogen Serial number: 0000000000000000000 Activation key: 1A27-4573-BAEC-3204-CBE5 не могу прямо сейчас проверить. Вообще-то там crc32table генерируется динамически, пока особо не вникал, но Activation key сгенеренный на одной машине не сработал для другой. ![]() |
|
|
Создано: 12 января 2005 02:56 · Личное сообщение · #21 |
|
|
Создано: 12 января 2005 03:13 · Личное сообщение · #22 |
|
|
Создано: 12 января 2005 03:35 · Личное сообщение · #23 |
|
|
Создано: 12 января 2005 04:41 · Личное сообщение · #24 |
|
|
Создано: 12 января 2005 06:01 · Личное сообщение · #25 |
|
|
Создано: 12 января 2005 07:12 · Личное сообщение · #26 |
|
|
Создано: 12 января 2005 07:42 · Личное сообщение · #27 |
|
|
Создано: 12 января 2005 08:05 · Личное сообщение · #28 |
|
|
Создано: 12 января 2005 08:16 · Личное сообщение · #29 |
| eXeL@B —› Основной форум —› есть такая прога - ShadowUser |

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












Для печати