user pass na IB/FB
7 отговора
197 прегледа
user pass na IB/FB
Здравейте!
Интересува ме как мага да разбера потребителите и паролите на база IB/FB?
Как и къде се пазят?
Венцислав Александрийски
Интересува ме как мага да разбера потребителите и паролите на база IB/FB?
Как и къде се пазят?
Венцислав Александрийски
ISC4.GDB/security.fdb
Вътре има таблица USERS. Паролите са хеширани, но една и съща парола дава един и същ хеш. Така, че малко трудно може да се разбере паролата, но лесно може да се подмени.
Re: ISC4.GDB/security.fdb
Разбира се
Информацията за потребителите на даден IB сървър се пази в база данни с име ISC4.GDB. Вътре в нея има таблица USERS. При FB положението е същото, но базата се казва security.fdb. Файловете се намират в директорията, където е инсталиран сървърът.
Ето ти примерни данни. SYSDBA в случая е с парола masterkey. (останалите примери са със сменени хешове. сори! security
)
USER_NAME -> PASSWD
SYSDBA -> n2zpJI3qBh2
KODAR -> Yh3pJv/N5vk
HTS_BROWSER -> 6A.KsTMntdU
HTS_EDITOR -> mМOWJSI3WoU
HTSYS -> 1y/T4hatQqA
Добавяме си юзер TEST с парола masterkey:
TEST -> n2zpJI3qBh2
Както виждаш хешът на паролата на TEST е същия, както на този на SYSDBA, от където можеш да заключиш, че паролите им са еднакви.
Хеширането става със същия метод, както се хешират паролите в Linux, само че стойността на солта е винаги една и съща (9А ако не се лъжа), от където и еднаквостта на хешовете на еднаквите пароли. Unix crypt е еднопосочен алгоритъм и принципно няма начин да се получи оригиналната парола от хеша й. Това имах предвид под "може да се смени". Добавяш си някакъв юзер USER1 с парола 12345678, гледаш какъв хеш прави, ъпдейтваш хеша на паролата на USER2 с новополучения и USER2 става с парола също 12345678. Е, разбира се, трябва да имаш достъп до компютъра, на който е инсталиран сървъра (или да знаеш администраторската парола, ама тогава няма много смисъл от тия еквилибристики
), че да му редактираш базата с юзерите...
Информацията за потребителите на даден IB сървър се пази в база данни с име ISC4.GDB. Вътре в нея има таблица USERS. При FB положението е същото, но базата се казва security.fdb. Файловете се намират в директорията, където е инсталиран сървърът.
CREATE TABLE USERS (
USER_NAME USER_NAME /* USER_NAME = VARCHAR(128) */,
SYS_USER_NAME USER_NAME /* USER_NAME = VARCHAR(128) */,
GROUP_NAME USER_NAME /* USER_NAME = VARCHAR(128) */,
UID UID /* UID = INTEGER */,
GID GID /* GID = INTEGER */,
PASSWD PASSWD /* PASSWD = VARCHAR(32) */,
PRIVILEGE PRIVILEGE /* PRIVILEGE = INTEGER */,
COMMENT COMMENT /* COMMENT = BLOB SUB_TYPE 1 SEGMENT SIZE 80 */,
FIRST_NAME NAME_PART /* NAME_PART = VARCHAR(32) DEFAULT _UNICODE_FSS '' */,
MIDDLE_NAME NAME_PART /* NAME_PART = VARCHAR(32) DEFAULT _UNICODE_FSS '' */,
LAST_NAME NAME_PART /* NAME_PART = VARCHAR(32) DEFAULT _UNICODE_FSS '' */,
FULL_NAME COMPUTED BY (first_name || _UNICODE_FSS ' ' || middle_name || _UNICODE_FSS ' ' || last_name )
);
Ето ти примерни данни. SYSDBA в случая е с парола masterkey. (останалите примери са със сменени хешове. сори! security
USER_NAME -> PASSWD
SYSDBA -> n2zpJI3qBh2
KODAR -> Yh3pJv/N5vk
HTS_BROWSER -> 6A.KsTMntdU
HTS_EDITOR -> mМOWJSI3WoU
HTSYS -> 1y/T4hatQqA
Добавяме си юзер TEST с парола masterkey:
TEST -> n2zpJI3qBh2
Както виждаш хешът на паролата на TEST е същия, както на този на SYSDBA, от където можеш да заключиш, че паролите им са еднакви.
Хеширането става със същия метод, както се хешират паролите в Linux, само че стойността на солта е винаги една и съща (9А ако не се лъжа), от където и еднаквостта на хешовете на еднаквите пароли. Unix crypt е еднопосочен алгоритъм и принципно няма начин да се получи оригиналната парола от хеша й. Това имах предвид под "може да се смени". Добавяш си някакъв юзер USER1 с парола 12345678, гледаш какъв хеш прави, ъпдейтваш хеша на паролата на USER2 с новополучения и USER2 става с парола също 12345678. Е, разбира се, трябва да имаш достъп до компютъра, на който е инсталиран сървъра (или да знаеш администраторската парола, ама тогава няма много смисъл от тия еквилибристики
Re: ISC4.GDB/security.fdb
А още по-лесно
вж. параметрите на <Fb/IB_directory>/bin/gsec.exe
А ако искаш всичко във визуална среда ползвай IBExpert
вж. параметрите на <Fb/IB_directory>/bin/gsec.exe
gsec utility - maintains user password database
command line usage:
gsec [ <options> ... ] <command> [ <parameter> ... ]
interactive usage:
gsec [ <options> ... ]
GSEC>
<command> [ <parameter> ... ]
available options:
-user <database administrator name>
-password <database administrator password>
-role <database administrator SQL role name>
-database <security database>
-z
available commands:
adding a new user:
add <name> [ <parameter> ... ]
deleting a current user:
delete <name>
displaying all users:
display
displaying one user:
display <name>
modifying a user's parameters:
modify <name> <parameter> [ <parameter> ... ]
help:
? (interactive only)
help
displaying version number:
z (interactive only)
quit interactive session:
quit (interactive only)
available parameters:
-pw <password>
-uid <uid>
-gid <uid>
-fname <firstname>
-mname <middlename>
-lname <lastname>
А ако искаш всичко във визуална среда ползвай IBExpert
Редактирано от NDeu на
Re: ISC4.GDB/security.fdb
Само ще коригирам andrew_nikoloff като кажа, че стойността на солта е "9z".
Между другото братушките са написали юнитче, което реализира хеширането. Ако те интересува - пиши и ще се разберем да ти го пратя някъде.
Светът е малък нека си помагаме.
Между другото братушките са написали юнитче, което реализира хеширането. Ако те интересува - пиши и ще се разберем да ти го пратя някъде.
Светът е малък нека си помагаме.
Благодаря за отговорите
Здравейте!
Благодаря за изчерпателните огтовори.
Венцислав Александрийски
Благодаря за изчерпателните огтовори.
Венцислав Александрийски