Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / защита от взлома / 25 сообщений из 68, страница 1 из 3
08.05.2012, 09:07
    #37785741
olegbilas
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
Прошу совета у наших уважаемых гуру и аксакалов форума. Я разработал алгоритм защиты базы от взлома на основе регистрационого пароля. Пароль формируется на основе системных характеристик компьютера пользователя (тоесть идея "прибить" базу намертво к компу пользователя, который ее оплатил). Идет привязка пароля к серийному номеру материнской платы и серийному номеру БИОСа. Вот часть кода по получению этих значений:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
'Считывает серийные номера
Public Function DriveSerial() As Long

Dim strComputer As String
Dim objWMIService As Object, colProcessor As Object, objProcessor As Object
Dim SerialNumberMb As String
Dim SerialNumberBIOS As String
Dim str As String
Dim Ch As String

    strComputer = "."
    
'Серийный номер материнской платы
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_BaseBoard", , 48)
For Each objItem In colItems
    SerialNumberMb = objItem.SerialNumber
Next

'Параметры BIOS
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colBIOS = objWMIService.ExecQuery("SELECT * FROM Win32_BIOS")
    For Each objBIOS In colBIOS
        SerialNumberBIOS = objBIOS.SerialNumber
    Next
    
'Формирование расчетного значения для пароля
str = SerialNumberMb
DriveSerial = val(regularDigits(str))
str = SerialNumberBIOS
DriveSerial = DriveSerial + val(regularDigits(str))
If DriveSerial <= 0 Then
    DriveSerial = 85612470 'на всякий случай
End If



SerialNumberMb -- серийный номер матер. платы, SerialNumberBIOS -- серийный номер БИОС, DriveSerial -- регистрациооный пароль, который пользователь должен сообщить мне, чтобы получить регистрационный ключ.
У меня вопрос: насколько уникальными для каждого компьютера являются серийный номер матер. платы и серийный номер БИОС, чтобы избежать формирования одинакового пароля на разных компах? Очень прошу высказать свое мнение
...
Рейтинг: 0 / 0
08.05.2012, 14:57
    #37786047
studieren
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
olegbilas,

А Вы вот это тоже прочли прежде чем начать свой топик? Там в частности вот в этом посте 12504814 PWW пишет так:
PWWНет уникального серийного номера процессора, есть номер "сборки" процессора. Т.е. таких процессоров будет выпущено много. Если в солидном учреждении, с толстым бюджетом, закупается оргтехника массово, то может оказаться, что все машины у них будут одинаковы (одинаковый процессор, материнская плата и ее биос) . Если программа устанавливается на частных домашних компьютерах, то юзеры не договорятся между собой об обмене ключей-можно привязаться к процессору+материнская плата+биос. Для корпоративных наверное надо добавить номер установки винды (он уникален). Но я не знаю, его подменить или нет.
Ну и так далее ...
Советую прочесть.
...
Рейтинг: 0 / 0
08.05.2012, 15:45
    #37786091
Программист-Любитель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
В больших компаниях все пк заливаются из одного типового образа. Никто отдельно винду + другое ПО не ставит.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
21.08.2018, 11:17
    #39690891
Joss
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
Решил поднять старую веточку вместо создания новой.
В интернете видел, кажется от Егорова Алексея, о получении информации о железе с помощью WMI. Статья была кажется за 2003 год. Там ещё о процессоре было.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Public Sub SpecificationsProcessor()
Dim strComputer As String
Dim objWMIService As Object, colProcessor As Object, objProcessor As Object

    strComputer = "."
    Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
    Set colProcessor = objWMIService.ExecQuery("SELECT * FROM Win32_Processor")
    For Each objProcessor In colProcessor
        Debug.Print "Name: " & objProcessor.Name
        Debug.Print "LogicalProcessors: " & objProcessor.NumberOfLogicalProcessors
        Debug.Print "Manufacturer: " & objProcessor.Manufacturer
        Debug.Print "Version: " & objProcessor.Version
        Debug.Print "Architecture: " & objProcessor.Architecture
        Debug.Print "Level: " & objProcessor.Level
        Debug.Print "Revision: " & objProcessor.Revision
        Debug.Print "ProcessorId: " & objProcessor.ProcessorId
    Next

End Sub

Так вот, получить данные о BIOS и процессоре получается, а вот о материнке - никак.
Может что-то изменилось в WMI с того времени? Или я что-то недоглядел?

А на счёт темы. Многие блокируют вывод номеров процессора и BIOS, так что предложение строить защиту на них неприемлемо. Вот привязка к винту при считывании заводского номера через SMART имеет право на жизнь.
...
Рейтинг: 0 / 0
21.08.2018, 12:13
    #39690929
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
Привязка к железу - вообще глупость, ну разве что исключая случаи, когда продаётся программно-аппаратный комплекс, состоящий и из программы, и из железа.
Jossо материнке - никак.
Может что-то изменилось в WMI с того времени?Нет, как был Win32_MotherboardDevice пустой, так и остался. Да и что с неё взять?
Впрочем, можно попробовать покопаться в MSFT_PCSVDevice .
Jossпривязка к винту при считывании заводского номера через SMART имеет право на жизнь.При включенном смарте...
...
Рейтинг: 0 / 0
21.08.2018, 12:16
    #39690934
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
Программист-ЛюбительВ больших компаниях все пк заливаются из одного типового образа. Никто отдельно винду + другое ПО не ставит.

Мечты, мечты.
Купил как-то партию в 200 шт. Intel DH61
А через полгода понадобилось еще 100.
А их с производства сняли.
Пришлось два образа сопровождать.
...
Рейтинг: 0 / 0
21.08.2018, 13:25
    #39691009
Joss
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
Вот здесь выложен вот такой код от Алексея Егорова
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
Public Sub SpecificationsMB()

Dim strComputer As String
Dim objWMIService As Object, colItems  As Object, objItem As Object
   
   On Error GoTo SpecificationsMB_Error

strComputer = "."
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
'Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_BaseBoard", , 48)
For Each objItem In colItems
    Debug.Print "-----------------------------------"
    Debug.Print "Win32_BaseBoard instance"
    Debug.Print "-----------------------------------"
    Debug.Print "Серийный номер: "; Tab; objItem.SerialNumber
    Debug.Print "Производитель: "; Tab; objItem.Manufacturer
    Debug.Print "Model: "; Tab; Tab; objItem.Model
    Debug.Print "OtherIdentifyingInfo: "; Tab; objItem.OtherIdentifyingInfo
    Debug.Print "PartNumber: "; Tab; Tab; objItem.PartNumber
    Debug.Print "Product: "; Tab; Tab; objItem.Product
Next
   On Error GoTo 0
   Exit Sub

SpecificationsMB_Error:

    MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure SpecificationsMB of Module Module4"
End Sub

Здесь описано получение и серийного номера, и модели, и производителя. Так вот эта подпрограмма у меня не работает. Вообще не создаёт коллекции.
В чём дело - не пойму.
...
Рейтинг: 0 / 0
21.08.2018, 14:11
    #39691077
Joss
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
Если Вы с удовольствием пользуетесь командной строкой Windows, то Вы можете с легкостью выяснить модель материнской платы при помощи мощного инструмента WMIC Microsoft

С WMIC мы можем выполнить запрос baseboard чтобы проверить материнскую плату и несколько дополнительных параметров таких как серийный номер, ревизия и другая подробная информация о вашей материнке. Давайте с вами попробуем на примере узнать производителя нашей материнской платы, модель и серийник с помощью WMIC. Откройте командную строку (это можно сделать сочетанием клавиш WIN + R на клавитаре и введя команду CMD). Кстати, командную строку не обязательно запускать от имени администратора. Введите следующий текст в командной строке.


Код: plaintext
wmic baseboard get product,Manufacturer,version,serialnumber 

Спустя пару секунд вы получите информацию о названии вашей материнской платы…

Источник: https://www.itshneg.com/check-model-motherboard/

Но у меня эта команда не работает. Интересно, почему?
Компьютер в сети. Я на нём локальный админ. Win 7 SP1 32 bit
...
Рейтинг: 0 / 0
21.08.2018, 15:07
    #39691132
Joss
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
В команде WMIC alias BASEBOARD существует. Но при попытке его применить выдаётся сообщение

Код: plaintext
No Instance(s) Available.

Что-то блокирует его использование.
...
Рейтинг: 0 / 0
21.08.2018, 15:30
    #39691150
bubucha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
Joss,
..не по теме

MAC адрес, не?
...
Рейтинг: 0 / 0
21.08.2018, 16:10
    #39691175
Joss
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
Чего я за это уцепился.

Запускаешь программы и она заносит в базу плату, процессор, винт, память, Windows, версию офиса, имя компьютера ну и т.д.
Получается база компов предприятия.

Пока так, наброски. Занимаюсь сбором информации и кода. Хочу задействовать только Access.
...
Рейтинг: 0 / 0
21.08.2018, 17:02
    #39691205
LocksmithPC
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
982183Мечты, мечты.
Купил как-то партию в 200 шт. Intel DH61
А через полгода понадобилось еще 100.
А их с производства сняли.
Пришлось два образа сопровождать.


А на хрена? Нужные дрова интегрируются в подготовленный образ для развертывания в последний момент.
...
Рейтинг: 0 / 0
22.08.2018, 10:15
    #39691514
Аллюр Д.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
JossЗанимаюсь сбором информации и кода. Хочу задействовать только Access.
WMI это уже не Access :)

Скрипт инвентаризации от Павла Железнова. Сайт уже приказал долго жить, но благодарное человечество сохранило скрипт на диске D
...
Рейтинг: 0 / 0
22.08.2018, 10:40
    #39691548
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
JossЗдесь описано получение и серийного номера, и модели, и производителя. Так вот эта подпрограмма у меня не работает. Вообще не создаёт коллекции
Странно... код-то в общем нормальный.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
 
For Each objItem in GetObject("winmgmts:\\.\root\CIMV2").ExecQuery("SELECT * FROM Win32_BaseBoard",,48)
    Debug.Print "-----------------------------------"
    Debug.Print "Win32_BaseBoard instance"
    Debug.Print "-----------------------------------"
    Debug.Print "Серийный номер: "; Tab; objItem.SerialNumber
    Debug.Print "Производитель: "; Tab; objItem.Manufacturer
' Disabled - because are empty
'    Debug.Print "Model: "; Tab; Tab; objItem.Model
'    Debug.Print "OtherIdentifyingInfo: "; Tab; objItem.OtherIdentifyingInfo
'    Debug.Print "PartNumber: "; Tab; Tab; objItem.PartNumber
    Debug.Print "Product: "; Tab; Tab; objItem.Product
    Debug.Print "Version: "; Tab; Tab; objItem.Version
Next
...
Рейтинг: 0 / 0
22.08.2018, 14:29
    #39691770
Joss
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
Аллюр Д.JossЗанимаюсь сбором информации и кода. Хочу задействовать только Access.
WMI это уже не Access :)
Но легко вызывается из VBA. Не требует дополнительных программ типа Aida64 или Everest. Спасибо за скрипты. Но материнку всё равно не считывает.

to Akina., Если у Вас программа считывает данные о материнке, значит прикол в моём компьютере.
...
Рейтинг: 0 / 0
22.08.2018, 16:13
    #39691901
Аллюр Д.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
JossНо материнку всё равно не считывает.
Считывает.

кусочек из файла, сформированного этим скриптомМатеринская плата;Производитель;1;ASUSTeK COMPUTER INC.
Материнская плата;Наименование;1;B85M-G
Материнская плата;Версия;1;Rev X.0x
Материнская плата;Серийный номер;1;140525974802972
...
Рейтинг: 0 / 0
22.08.2018, 16:16
    #39691903
Прогер_самоучка
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
JossАллюр Д.пропущено...

WMI это уже не Access :)
Но легко вызывается из VBA. Не требует дополнительных программ типа Aida64 или Everest. Спасибо за скрипты. Но материнку всё равно не считывает.

to Akina., Если у Вас программа считывает данные о материнке, значит прикол в моём компьютере.физически может не может считать программа?
Или какой-то экран висит?
...
Рейтинг: 0 / 0
22.08.2018, 16:19
    #39691905
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
JossЕсли у Вас программа считывает данные о материнке, значит прикол в моём компьютере.А пошаговая трассировка что показывает? Пустую коллекцию (не попадаем внутрь For Each) или пустые значения свойств?
...
Рейтинг: 0 / 0
22.08.2018, 16:23
    #39691908
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
И, стесняюсь спросить, а winmgmt запущена?
...
Рейтинг: 0 / 0
22.08.2018, 20:41
    #39692018
PWW
PWW
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
bubuchaJoss,
..не по теме

MAC адрес, не?

Не..
У меня разок провайдер на домашней машине MAC адрес сменим. Это то что я знаю, а там кто знает что у провайдера на уме, может быть он раз в неделю MAC адреса всем меняет.
...
Рейтинг: 0 / 0
22.08.2018, 21:16
    #39692023
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
PWWУ меня разок провайдер на домашней машине MAC адрес сменим.На сказку похоже. На быль - нет.
PWWЭто то что я знаюПолагаю, это ложные знания.
...
Рейтинг: 0 / 0
22.08.2018, 21:52
    #39692037
Joss
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
AkinaPWWУ меня разок провайдер на домашней машине MAC адрес сменим.На сказку похоже. На быль - нет.
PWWЭто то что я знаюПолагаю, это ложные знания. Та нет. Был тут базар об этом. Если покопаться по форуму, то можно найти. Была там и ссылка на программу, которая это делала. Но тот сайт приказал долго жить.
...
Рейтинг: 0 / 0
22.08.2018, 21:58
    #39692039
Joss
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
AkinaJossЕсли у Вас программа считывает данные о материнке, значит прикол в моём компьютере.А пошаговая трассировка что показывает? Пустую коллекцию (не попадаем внутрь For Each) или пустые значения свойств?
Проверил дома - всё считывает. А на работе - облом.
Пошагово проверял - пустая коллекция.
...
Рейтинг: 0 / 0
23.08.2018, 07:36
    #39692125
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
Jossссылка на программу, которая это делала.Ну не надо бред-то распространять! Я вот сам, сознательно и руками, это сделать не смогу из своей рабочей учётки - поскольку у неё нет необходимых прав, нужно админом грузиться. А чтобы какая-то там программа, да удалённо, да влезла в настройки моего сетевого адаптера и изменила там МАС-адрес? При том что такой возможности может просто вообще не быть у драйвера сетевой карты (а для сравнительно старых карт или карт малоизвестных вендоров это обычное дело)...

В общем, это байка из той же бочки, что и стопервая рассказка про вирус, который плавит клавиатуру...
...
Рейтинг: 0 / 0
23.08.2018, 07:39
    #39692129
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
защита от взлома
JossПошагово проверял - пустая коллекция.Но без ошибок?
А вариантов немного:
1) Не запущена служба
2) Недостаточно прав для обращения к службе или неверно выполняется имперсонация
3) Таковы текущие настройки, или это особенность драйвера платформы

Права у учётной записи - какие? А программы-сборщики сведений о системе (скажем, Speccy) показывают полные сведения, или тоже зажимают половину?
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / защита от взлома / 25 сообщений из 68, страница 1 из 3
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]