Сейчас на форуме: testrev1337, vsv1, 2nd, bedop66938 (+7 невидимых) |
eXeL@B —› Крэки, обсуждения —› Последний Шаг или.Net и с чем его едят |
. 1 . 2 . >> |
Посл.ответ | Сообщение |
|
Создано: 04 марта 2009 21:52 · Поправил: FleXik · Личное сообщение · #1 Всем доброго времени суток. Это опять я=) как говорится помогите кто чем может, нипайму я как разрезать внутренности ДотНет проги( а точнее добраться до сути немогу. Начну с того что 2\3 я уже сделал, а именно 1) залез на сайтец проги , слил ее оттуда (благо ОдМиН оказался лохом) и запрос юзер\пасс меня не остановили. 2) Сетапер который я слил оказался запароленный, но пароль я всетаки выдрал для некольких продуктов, один из которых был мой. ну думал все- ага не тут то было- самое сладкое осталось напоследок 3) установив прогу оказалось что требуется Authorization Code. дальнейшие исследования показали что : "удалено за ненадобностью" |
|
Создано: 04 марта 2009 21:55 · Поправил: FleXik · Личное сообщение · #2 - удалено - Это примерно запросик на сервер который шифруется встроенным RSA майкрософта который я подсмотреть тоже могу ... X f g L j X C J f k d a i V M N 2 B z 5 o 0 N X j B z 6 o R a d 4 M z J q / G 5 7 J d h L F s E v 8 f l 5 7 O T g 0 U h D x b 2 + h W p F v 1 x C i C 2 R L n x / G q b 0 4 J t K S z 8 P f N C 5 0 P c r l L Z j A 1 b W d U G q e w k L h B U W 7 x / B H 0 7 S l L R I + 3 6 / P B S I O x U s 4 x 3 i V o C 2 B O Z t S R 7 l a q h M f j D e v u m O c V R c w J k X C e Q c e Q F d S 7 0 5 T n M M P J 5 L i k a n N 3 L k J Y S 9 J 8 h i H c M 4 b o U 5 d A z i D F u 2 2 4 g q j L i w 5 d f 1 l y M 4 3 h 8 Z K 0 Q 0 F q H j o S s 1 s r U 2 + K z k 1 x h U W H 0 v x a + 3 M v F i J / 0 5 k z H 3 L D F o F h q a A a Q E 0 W F K f e 5 r i N Q E 2 8 O y s S 6 Z + W n Z c w G K J 8 Z v Y s 4 b g 4 S L t u B W o t J 4 r 4 a a Y 3 Y b F G K 6 G Q p Y T 4 + 6 u 8 2 l k o 4 P A A u U f 5 O i N 0 4 I H 8 v S B / L L h 1 a j B D 5 o e j q f E N c x z U o 8 X 4 6 m C b m 2 8 C l o g O I 9 7 W 5 R q F F F 8 Q / I K b o t 0 g U k s V U U o v 6 W 2 a j 2 C r q N y L K V W b W d S e N u R J O j d / 9 m 7 8 t b j x P p N w Z o g k O H F Y 6 N / z + I q Y u d Q j Z r I d z q z W l G p 8 L P G 4 F r 3 P n v S a 8 f D 9 X k g J x N 7 F M 1 P t 2 u j 0 N P H w k T 1 M s Q z E J S 3 N q c C h a m X d q / 3 b K l 4 d 1 z 3 d 0 t o P s Z j a k G b r N P p C K 7 h v g W Y 1 P D 7 5 w h 9 l f f W c 1 P z k Z / t m + Y 5 o v i 1 q B M P C O 7 8 5 b A e 6 x A 1 E H p J p a b o N F I 2 E I E W N A b R c j 9 s 6 h a Y 4 M w M c 9 / F 5 a f h / P + I s o v 1 2 G m j O 4 N t / V T 3 r I 8 M b X W k X Q d b M p T M x / G q x v i 3 3 b A d Z x L n P O l p x E g 0 s C u h i S P E q 6 Y N B J A D d v C o m C C p J 4 S i J 5 u L p b t W j V 8 d S M b h m 9 t N Z i B a L z N r P x L Y q R h I C x L M 4 D O j b a 0 / K N s A 0 m E p p g 9 k t a c I 3 Y y I z Q g V k p 3 u U n z x D L H O V Q o n M 3 u P s z B G 6 j / M 4 u z 0 / A Y j 2 9 h z P J v H o 6 o 2 h 8 Q F i N y R M 1 + Q x J u r C e H + g M 6 + w i T S i q O Z f k o G i 7 q H C f t s G v q c 3 q k x A M x q b X U b V e c s W G z a 5 T P O i t 6 9 Q t v x M o Z r D c / D 7 C v q E q l + h g 1 k T s T e A 8 h D b j Y d 1 5 P A 4 K r N s / N k V 1 x w n c d 2 L e H y G d y e g s P 9 1 S b + P T f 8 g k E f z Y l 9 u r S 7 g n X a H F A K Y v Z h 3 9 c 7 M H U I q Z A M X 8 K q H P 8 N q X 3 p D 3 b t M R 3 s y A h j T 5 3 G b q Q B q l E q 3 d m 1 i i B c h s T g r K A 5 3 J F K W d q c T j f 8 O V q q Y j M N L W w D q f c v G j 4 6 l U z o n g F c q 9 6 J K D 3 v v B x h o l O k l j l h d / g f W Q P + 8 4 + H Y Y O g l d O + V M v P s F 3 J 9 5 u r j 8 e y H g n 0 b + / u N 7 Y 0 8 2 3 B S N G W k I 3 2 z H q 4 y O G 8 t / L 8 7 T W 1 R l L 1 h 6 r K G y F X g t M 5 7 0 7 5 P 4 b s / E e H Q e v a U i J 7 0 4 W X 4 h N y n m R G k C s g v I i 5 O i L t 0 v x j u g k K k G p x X F m w O l R Z 8 h c t B f S 6 9 H R V j Z 2 N x w V 3 8 R 0 n 5 e C u s O a d i + r U D / X M E 8 4 t + c 9 H w s 2 j F r Y T F 8 I 1 C 1 + + b h n n l X Y I Q n / D f 8 b n C w s P Q f N e 0 A M F I o 9 J s s d 1 9 5 z k 8 J l M R H k z 8 D M B W 0 u 3 B u F S C 4 U 9 B j z R 4 F g U C I p c j U 9 l b y W P k H 4 H + d H H 3 H j w c t d 4 G c 6 B k = В ответ приходит что то вроде HTTP/1.1 200 OK Date: Wed, 04 Mar 2009 16:58:31 GMT Server: Microsoft-IIS/6.0 X-Powered-By: ASP.NET X-AspNet-Version: 2.0.50727 Cache-Control: private, max-age=0 Content-Type: text/xml; charset=utf-8 Content-Length: 494 <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><ActivateRespo nse xmlns="http://sitestream.biz/miilicensing/licensesubscription/renewals "><ActivateResult><Status>4</Status><LicenseResponse /><ErrorMsg>Unregistered Key</ErrorMsg><LicenseStatus>0</LicenseStatus></ActivateResult></Activ ateResponse></soap:Body></soap:Envelope> |
|
Создано: 04 марта 2009 22:02 · Поправил: FleXik · Личное сообщение · #3 |
|
Создано: 04 марта 2009 22:18 · Личное сообщение · #4 Так же могу сказать откуда слить 175 метровый файло если оно надобно с хорошей скоростью.... эта корпорация пытается сохранить свои секреты, тупо пряа их в компании и не разглашая кроме регистрированных юзверей. конечно же валидной пары нету, но написать прогу которая буит вместо сервера давать ответы проге - раз плюнуть для меня - знать бы только чего передавать.. я зацыклился в постоянных SEH в проге ( наставте на путь истинный или по крайней мере подскажите мож е почитать на тему снятия с Дотнет защит |
|
Создано: 04 марта 2009 22:55 · Личное сообщение · #5 |
|
Создано: 04 марта 2009 23:01 · Личное сообщение · #6 Что можно сказать, кроме того что ты тормоз ? . какой смысл патчить динамическо сгенеренный машинный код, если он при каждом запуске генерицо заново. и лоадер ты не напишешь поскольку нет не каких гарантий что код сгенеритсо также на твоей машине, я уже не говорю про другие... юзай гугл и поищи статьи на этом сайте. здесь рулит статик патчинг. отлаживать дотнет прогу не дотнет дебагером вобще тема для садо мазахистоф. ----- have a nice day |
|
Создано: 04 марта 2009 23:11 · Личное сообщение · #7 |
|
Создано: 04 марта 2009 23:36 · Личное сообщение · #8 |
|
Создано: 05 марта 2009 03:28 · Личное сообщение · #9 |
|
Создано: 05 марта 2009 11:45 · Личное сообщение · #10 |
|
Создано: 05 марта 2009 12:36 · Личное сообщение · #11 |
|
Создано: 05 марта 2009 14:46 · Личное сообщение · #12 Bat Листинг удобнее читать в IDA, отлаживать в мс вижуал студии. В качестве введения: Реверсинг .Net Framework приложений и компонентов --> часть 1 <-- --> часть 2 <-- --> часть 3 <-- |
|
Создано: 05 марта 2009 17:58 · Поправил: FleXik · Личное сообщение · #13 Благодарю за сцылки и наВодКу. познание нового для мозга - это как шоколадка для желудка- сначало вкусно а потом плохо =)) Итак вернемся собственно к теме. Изучив все доки (а именно 3 части выше, поняв только половину из написанного так как все написано в 1 строчку и без пробелов и читается жутко) я выудил несколько моментов, которые навели меня тупо и глупо на дллку которая собственно и отвечает за нужную мне проверку - дллка маленькая всего то 392 килобайта. далее о насущном. вижуал студией мне отладить ету дллку Ну никак Не получилось как это делается хотя бы в Оле (( что сильно затруднило процесс но не остановило. NetReflector мне мало здесь пригодился потому как обусфакцию снять не сумел( как и рядом лежащие 5 тулзов, зато Dis# снял на отличненько и вот мы имеем Очень запутанный код, с милионом тупых goto label_1 что не есть Гуд... как я понял проверка идет в нескольких классах а именно (попытался здесь вставить код, но он на столько идиотский что не влез суда.- каму интересно смотрите метод internal static Root.j a(string A_0, int A_1, ref System.Guid A_2, ref string A_3, ref string A_4) ) в общем хотелось бы узнать ответы на след вопросы: 1) Можно ли Дебажить прогу как это делается в оле, но только ".Нет" -ответ можно, но вот как заставить это сделать вижуал студию я не понял( мож кто линками кинет? 2) Как правильно изменить содержимое сиго файла что б он работал дальше ( а главное чем ибо Dis# не хочет удалять вызов диалога) нормально, как собственно и аддон к рефлектору рефлексил(там я ваще не нашел как сохранить изменения) - опять таки если кто знает поделитесь 3) если можете наведите на мысль как удобнее все это Распознать Если кому лень качать Dis# то я могу выложить сырец файла сгенеренный им ==========добавлено чуть позже======== Тэкс на Васм форуме нашел ответ .NET Reflector + Deblector Товарища Bat щас буду рыть. вроде там человек подошло Прямотаки скажем Неочень доблектор этот http://orand.blogspot.com/2006/10/debugging-with-reflector-and-visual. html http://orand.blogspot.com/2006/10/debugging-with-reflector-and-visual.html вот интересная статейка изучаю + ставю) глянем что получится - глянул - вс2005 не хочет хавать екзешник( что я не так делаю( |
|
Создано: 05 марта 2009 18:12 · Поправил: FleXik · Личное сообщение · #14 Прилагаю dll и сырец отдельно Dll: [url=http://link_deleted_by_forum_engine/files/spn3x517d ]http://link_deleted_by_forum_engine/files/spn3x517d [/url] Source: [url=http://link_deleted_by_forum_engine/files/ul0pllcoi ]http://link_deleted_by_forum_engine/files/ul0pllcoi [/url] рар - внутри 2 файла 1) mnl.h - ildasm'ом сгенеренный (жутко кривой но кому что) 2) a.cs - dis# сохраненный со снятой обусфакцией (блин сохранил не полностью а токо кусок, по моему мнению отвечающий за проверку ) |
|
Создано: 06 марта 2009 01:23 · Поправил: 4kusNick · Личное сообщение · #15 FleXik 2. Правь все рефлексилом. Чтобы сохранить изменения - тыкаешь в дереве слева на саму dll, справа в панели рефлексила увидишь save as... Сохранятся все изменения во всех классах. Имхо, вообще проще было бы запатчить "вызовы" этой dll в самой проге, нежели саму dll. Кстати, Obfuscated with Dotfuscator Professional Pre-build license... P.S. у тебя Dis# ломаный? ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. |
|
Создано: 06 марта 2009 02:36 · Личное сообщение · #16 |
|
Создано: 06 марта 2009 08:55 · Личное сообщение · #17 |
|
Создано: 06 марта 2009 14:18 · Личное сообщение · #18 4kusNick Dis# скачан с Кряклаба, и явно кракнутый=) так что норм вроде с ним все. дело в том что прога, повторюсь, корпоративная, и на эту 1 дллку вешается несколько (а именно около 10) разных ехешников, править во всех не имеет смысла сам понимаешь, да и если учесть что самый "маленький" из ехешников 4.5 метра ..... а самый бошой 20метров.. думаю продолжать не стоит ) Благодарю! так запрятать кнопку сейва ... просто ужос)) спс за подсказку я думал что все перерыл=) буду править=) DarkWolf 1) да я сначала пробовал именно дотфакером) снять обусфакцию, но чет мож неправильно сделал и он ее не снял, хотя потом уже после установки рефлексила и доблектора я увидел что он всетаки снял обусфакцию, просто надо знать где смотреть ее в НетРефлекторе=) 2) спс попробую Dile позже отпишусь о результатах, ибо доблектор идет без хелпа, а разобраться как там ставить бряки стало делом нелегким=) хотя я попробую разобраться и написать доку. Bat специально для вас обзор врядли кто то будет писать, если только ему самому это не надо или хочет поделиться своими знаниями. 2all хотелось бы узнать кто нибудь аттачился нормально в Вижуал студии к файлу и его трейсил\дебажил?? птотму что к процессу он цепляется но ни бряки не хавает ни код посмотреть, да и кол стек пустой( может быть кто наведет на полезные статьи (англ\рус мне не важно свободно на обоих) благодарю за ответы. |
|
Создано: 06 марта 2009 14:45 · Поправил: NIKOLA · Личное сообщение · #19 Что-бы дебажить NET сборки, нужен pdb-шник, берется он при компиляции в ilasm с ключом /debug. Bat У китайцев есть dotNet_Studio_Suite_Plus_090301 - эта последняя на сегодняшний день. Там есть все. По гугли. Страница. http://www.unpack.cn/viewthread.php?tid=33223&highlight=dotNet%2BStudio Скачать http://www.rayfile.com/zh-cn/files/7fbb22bd-0676-11de-a85b-0019d11a795f/ , только нужно будет установить клиента-загрузчика. |
|
Создано: 06 марта 2009 21:10 · Поправил: FleXik · Личное сообщение · #20 |
|
Создано: 07 марта 2009 19:11 · Поправил: Nimnul · Личное сообщение · #21 |
|
Создано: 07 марта 2009 19:14 · Личное сообщение · #22 |
|
Создано: 08 марта 2009 02:33 · Поправил: FleXik · Личное сообщение · #23 Nimnul хм( там ее чепляется еще за кучу дллок( какие точно выяснять... мягко сказать тяжело+там работа с базой-в ольке я грузил-там порядка 30дллок юзает прога. да я почти разобрал алгоритм дллки там 2 функции отвечают за проверку- первая вызывает диалоги всякие(впринципе ехешник просто получает указатель на массив в длл куда она получила ключ(если вааще получает) потому как все действия включая все диалоги вызываются именно внутри длл и в ней же прописаны. а вторая функция- если первая прошла успешно и передала управление на 2ую проверяет на сам серийник и выдает месагбокс что он не верный. 1- method private hidebysig static int64 a(int32 A_0, string A_1, int32& A_2, bool A_3) cil managed в MiTekLicensing.MiiLicensing 2-.method assembly hidebysig static valuetype j a(string A_0, int32 A_1, valuetype [mscorlib]System.Guid& A_2, string& A_3, string& A_4) cil managed там же а вот и сам месагбокс Code:
|
|
Создано: 08 марта 2009 02:36 · Личное сообщение · #24 вот только я не могу строчки нормально прочитать ибо они закодированы с помощью Code:
|
|
Создано: 08 марта 2009 02:37 · Личное сообщение · #25 |
|
Создано: 08 марта 2009 10:11 · Поправил: digger70 · Личное сообщение · #26 FleXik Ну и зачем это все здесь постить? Нашел нужное место и замечательно. Или разбирай алго проверки или патчи dll - она все равно не подписанная. Поглядел внимательно - патчить там конечно без толку - надо структуру файла лицензии восстанавливать. Если надо помоч - давай ссылку на дистрибутив в ЛС |
|
Создано: 08 марта 2009 22:40 · Личное сообщение · #27 |
|
Создано: 08 марта 2009 22:53 · Личное сообщение · #28 digger70 правда не знаю зачем тебе дистр потому как там реально вроде все шаги проверяются именно в этой длл и на основе данных в каждую структуру пишется свое ) 2 дня был на работе времени небыло покопать( да и кстати подскажите кто знает правильно ли я свитчем MSIL пользуюсь switch(0,1,2,3 итп элементы массива джампов так? или я что то путаю просто там есть переходы типа L_0321: ldc.i4 0x42 L_0326: stloc num3 L_032a: br L_000e -это джамп на свитч так вот 0х42 записанный в num4 это переход на 66элемент или на 67 считая что первый элемент 0? нигде норм доков по данной теме не нашел |
|
Создано: 09 марта 2009 00:38 · Личное сообщение · #29 |
|
Создано: 09 марта 2009 11:52 · Личное сообщение · #30 Nimnul я про вот Это! =) спс чет я недошел видимо или кто то отвлек=) OpCodes.Switch Field Implements a jump table. Namespace: System.Reflection.Emit Assembly: mscorlib (in mscorlib.dll) Syntax Visual Basic (Declaration) Public Shared ReadOnly Switch As OpCode Visual Basic (Usage) Dim value As OpCode value = OpCodes.Switch C# public static readonly OpCode Switch Visual C++ public: static initonly OpCode Switch JScript public static final var Switch : OpCode Remarks The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary: Format Assembly Format Description 45 < unsigned int32 > < int32 >... < int32 > switch (N, t1, t2... tN) Jumps to one of N values. The stack transitional behavior, in sequential order, is: A value is pushed onto the stack. The value is popped off the stack and execution is transferred to the instruction at the offset indexed by the value, where the value is less than N. The switch instruction implements a jump table. The format of the instruction is an unsigned int32 representing the number of targets N, followed by N int32 values specifying jump targets. These targets are represented as offsets (positive or negative) from the beginning of the instruction following this switch instruction. The switch instruction pops a value off the stack and compares it, as an unsigned integer, to N. If value is less than N, execution is transferred to the target indexed by value, where targets are numbered from 0 (for example, a value of 0 takes the first target, a value of 1 takes the second target, and so on). If the value is greater than or equal to N, execution continues at the next instruction (fall through). If the target instruction has one or more prefix codes, control can only be transferred to the first of these prefixes. Control transfers into and out of try, catch, filter, and finally blocks cannot be performed by this instruction. (Such transfers are severely restricted and must use the leave instruction instead). The following Emit method overload can use the switch opcode. The Label[] argument is an array of Labels representing 32-bit offsets. ILGenerator.Emit(OpCode, Label[]) |
. 1 . 2 . >> |
eXeL@B —› Крэки, обсуждения —› Последний Шаг или.Net и с чем его едят |
Эта тема закрыта. Ответы больше не принимаются. |