ოდესმე გსურდათ იმის სწავლა, თუ როგორ იცავს პროგრამა გადაწერას? სწორი ინსტრუმენტების საშუალებით შეგიძლიათ შეამოწმოთ პროგრამის შიდა სამუშაოები და ექსპერიმენტი გაუკეთოთ საპირისპირო ინჟინერიას. დასაწყებად დაგჭირდებათ მჭიდროდ გაცნობა ასამბლეის პროგრამირებასა და ექვსკუთხა კოდზე და დაშლის დამხმარე პროგრამა. მას შემდეგ რაც გაეცანით კოდს, შეგიძლიათ შეცვალოთ DLL, ისე რომ მათი შესაბამისი პროგრამები არასოდეს იყოს რეგისტრირებული ან შეძენილი.
ნაბიჯები
ნაბიჯი 1. ისწავლეთ ასამბლეის პროგრამირება და ექვსკანიანი მანიპულირება
თუ გსურთ პროგრამული უზრუნველყოფის უმეტესობის გატეხვა, თქვენ უნდა გქონდეთ კარგი ცოდნა ასამბლეის შესახებ, რომელიც არის დაბალი დონის პროგრამირების ენა. ასამბლეა წარმოებულია მანქანების ენიდან და თითოეული ასამბლეის ენა სპეციფიკურია თქვენი კომპიუტერის ტიპისთვის. ასამბლეის ენების უმეტესობა გამოიხატება ორობითი და თექვსმეტობით.
ნაბიჯი 2. დააინსტალირეთ disassembler
DLL– ების შესამოწმებლად და შესაცვლელად, დაგჭირდებათ რამდენიმე განსხვავებული ინსტრუმენტი, მათ შორის დემონტაჟი. IDA Pro არის შესანიშნავი ვარიანტი, რადგან ის არის დაშლა და გამხსნელი. საბედნიეროდ, უფასო ვერსია ხელმისაწვდომია https://www.hex-rays.com/products/ida/support/download_freeware– დან, თუმცა ის ბევრად უფრო შეზღუდულია ფუნქციონირებაში, ვიდრე Pro ვერსია. თქვენ ასევე შეგიძლიათ სცადოთ dotPeek, რომელიც არის DLL- ის მხარდამჭერი დეკომპილირება, რომელიც ახორციელებს. NET ასამბლეის კოდს C#. კიდევ ერთი ვარიანტია OllyDBG, რომელიც გაძლევთ საშუალებას გახსნათ DLL ფაილები უფასოდ.
ნაბიჯი 3. გახსენით პროგრამა, რომლის გატეხვაც გსურთ თქვენს დემონტაჟში
პროცესი ოდნავ განსხვავდება იმისდა მიხედვით, თუ რომელ დემონტაჟს იყენებთ. ეს გაჩვენებთ რა DLL ფაილებს იტვირთება პროგრამა. გამოიყენეთ დებაგერი, რომ შეამოწმოთ რომელი ფუნქციები იძახება DLL– დან.
ნაბიჯი 4. იპოვეთ მრიცხველის ფუნქცია
ბევრი პროგრამა იყენებს ტაიმერს ასლის დაცვის მიზნით და როდესაც ტაიმერი ამოიწურება, მომხმარებელს აღარ შეუძლია შევიდეს პროგრამაზე. მიზანი არის ამ მრიცხველის კოდის პოვნა, შემდეგ კი მისი გვერდის ავლით.
თუ პროგრამა, რომელსაც თქვენ ბზარავთ, იყენებს დაცვის სხვა ფორმას, ამის ნაცვლად თქვენ უნდა მოძებნოთ იგი
ნაბიჯი 5. დააყენეთ შესვენების წერტილი მრიცხველზე
მას შემდეგ რაც იზოლირებთ მრიცხველის ფუნქციას, დააყენეთ დაშლა, როდესაც ის შეჯახდება. ეს საშუალებას მოგცემთ გადახედოთ ზუსტ კოდს, რომელიც ხდება მრიცხველის ფუნქციის გამოძახებისას.
ნაბიჯი 6. შეცვალეთ მრიცხველის კოდი
ახლა, როდესაც თქვენ იპოვნეთ მრიცხველის ფუნქციის კოდი, შეგიძლიათ შეცვალოთ კოდი ისე, რომ მრიცხველი არასოდეს მიაღწიოს იმ დონეს, სადაც ის გათიშავს თქვენ პროგრამიდან. მაგალითად, თქვენ შეგიძლიათ გააკეთოთ ისე, რომ მრიცხველი ვერ ითვლის შესვენების ზღვრამდე ან შეგიძლიათ გადალახოთ მრიცხველი მასზე გადახტომით. '
ნაბიჯი 7. ხელახლა შეადგინეთ თქვენი ახლად გატეხილი პროგრამული უზრუნველყოფა
დაშლის და რედაქტირების შემდეგ, თქვენ უნდა შეადგინოთ პროგრამის ახალი ვერსია, რათა თქვენი ცვლილებები გავრცელდეს DLL ფაილებსა და სხვა დამოკიდებულებებზე.
გაფრთხილებები
- პროგრამული უზრუნველყოფის მეკობრეობა უკანონოა, ასე რომ გააკეთეთ ეს თქვენივე რისკით.
- უკანონოა პროგრამული უზრუნველყოფის უმეტესობის გატეხვა.