• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Вывод Deletion Stub во взгляд?

puks

Lotus Team
03.02.2007
1 919
55
BIT
3
Сразу уточню, что речь не идет о восстановлении удаленного документа в целом. Задача заклюается в следующем.

Есть в базе удаленные документы и можно без проблем найти нужный документ по его UNID и посмотреть дату его удаления при помощи NotesPeek или ScanEz. Но для этого этот софт должен быть установлен и люди должны уметь с ним работать.

Соответственно, появился вопрос: "Возможно ли сделать агента, чтобы пройтись по базе и преобразовать эти стабы в обычные документы с сохранением информации, которую стаб имеет?". Тогда эти документы можно было бы вывести в обычный взгляд.
 

puks

Lotus Team
03.02.2007
1 919
55
BIT
3
nvy
Ну это уже что-то для начала. Чего же Костя-то молчал, как партизан? :)
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
эти доки можно найти через set col = db.alldocuments - по флагу is deleted
но на мой взгялд правильнее было бы создать событие на удалении и помещать их в свою "корзину" чем гемороиться с постфактом
 

puks

Lotus Team
03.02.2007
1 919
55
BIT
3
ToxaRat
Есть условия, кторые мы изменить не можем. Как-то, исходная база с удаленными документами и неизменным дизайном у заказчика. Мы можем (и хотим) все что угодно делать с полученной от заказчика базой. Особенно, хочется вывести все стабы, чтобы не было необходимости в другом софте типа пика. Фактически, от стаба надо только UNID, NoteID and DeletedTime.
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
Есть условия, кторые мы изменить не можем. Как-то, исходная база с удаленными документами и неизменным дизайном у заказчика. Мы можем (и хотим) все что угодно делать с полученной от заказчика базой. Особенно, хочется вывести все стабы, чтобы не было необходимости в другом софте типа пика. Фактически, от стаба надо только UNID, NoteID and DeletedTime.
1) создай другую базу
2) в ней агентом проходись и копируй внутрь доки
3) с указанием оригинального UNIDа потом береёшь из єтой базы доки и сравниваешь какой удалён
4) копии кидаешь в папку - Удалённые

Как результат базу оригинал лишь дёргаешь на предмет чтения доков и ничего в ней не меняешь

аналогично можно создать реплику оригинала без репликации стабов и опять таки напилить агент в другой базе
 

puks

Lotus Team
03.02.2007
1 919
55
BIT
3
Вроде получается достучаться и забрать UNID.

А Deletion Time пока никак.
 

puks

Lotus Team
03.02.2007
1 919
55
BIT
3
ToxaRat
эти доки можно найти через set col = db.alldocuments - по флагу is deleted

Вроде, alldocuments не возвращает стабов.

бери последнюю дату модификации

Это-то понятно. Вроде получилось. Просто со временными значениями пришлось разбираться как в API работать.
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
Вроде, alldocuments не возвращает стабов.
возвращает тебе даже доки, которые ты не имеешь право видеть :)

имеено db.alldocuments.Count и есть то число, которое в свойстве базы показывает сколько там доков
 
N

nvyush

имеено db.alldocuments.Count и есть то число, которое в свойстве базы показывает сколько там доков
Всегда считал, что это число неудалённых документов. Согласен, что db.alldocuments может вернуть удалённый документ, но, кмк, только в случае, когда его удалил кто-то другой уже после открытия коллекции.
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
Всегда считал, что это число неудалённых документов. Согласен, что db.alldocuments может вернуть удалённый документ, но, кмк, только в случае, когда его удалил кто-то другой уже после открытия коллекции.
тоже так думал раньше
но как показывает практика серверный агент умудряется находить доки удалённый очень давно
конечно фикс и компакт помогает временно решить эту проблему
но везде пришлось лепить проверки на isValid & isDeleted

что-то у IBM там не всё гладко с db.alldocuments
 

puks

Lotus Team
03.02.2007
1 919
55
BIT
3
Может он, конечно, иногда и возвращает, но периодически. Я на тестовой базе ни разу не получил удаленных. Поэтому этот метод не прокатил. Я все сделал через вызовы C API.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!