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

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

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

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

Lotusscript Library

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
Всем здрасте!
Есть у кого-нить наработки как получить перечень процедур из библиотеки?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
214
коллеги вродиж выкладывали (без сорцов :D )
декомпиллер разрабатывается ? ;)
 

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
нет :D
так высоко я не прыгаю ;)
мне по скромному... просто имена процедур
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
тем же DXML получите перечень процедур :D
 

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
с какой стороны к этому вопросу подойти?
парсить всю базу?
Либа это же вроде бы не отдельный документ....
 
N

nvyush

с какой стороны к этому вопросу подойти?
парсить всю базу?
Либа это же вроде бы не отдельный документ....

Вообще-то либа есть отдельный документ. Ежели глянуть в её свойства, можно найти и список полей, и юнид.
 
O

Omh

А при открытом дизайне или закрытом?
 
O

Omh

Тогда всё просто.

2 способа:
Строим NotesNoteCollection с параметрами:
<!--shcode--><pre><code class='vb'>NNc.SelectScriptLibraries = True
NNc.SelectionFormula = {$TITLE = "ИМЯ_ТВОЕЙ_БИБЛИОТЕКИ"}[/CODE]
После build'a NNc получаем коллекцию с одним NoteID (твоей библиотеки).
Соответсвенно, можем получить документ библиотеки (GetDocumentByNoteID)

Теперь развилка:
1. выкидываем этот документ в DXL и парсим.
2. парсим поле с названием $ScriptLib (там хранится нескомпилированный скрипт)

Я за первый вариант, на мой взгляд удобнее.
 
A

Akupaka

Я за первый вариант, на мой взгляд работает стабильнее.
какая разница, что парсить?..
в первом варианте только лишние телодвижения - получить DXL, получить из него значение поля, которое в итоге будет иметь то же значение, что и поле в документе!
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
Akupaka
ну как по мне разница первого и второго метода в том, что те кто умею парсить XML и те кто умеют работать со стрингом, так как во 2-м случае нужно лишь узнать названия за сторок типа Sub, Function
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
214
в первом случае - достаточно XSLT
во втором - писать обработку в коде (и не факт, что плучится оптимально)
 
A

Akupaka

ну как по мне разница первого и второго метода в том
парсят строки, а с XML - работают! :)

в первом случае - достаточно XSLT
заставил меня усомниться в моих словах...

короче, вывод - согласен, что первый метод может быть удобнее, если нужно узнать названия функций.
теперь, объясняю, что к чему, т.е. почему я изменил мнение.
когда я ответил первый раз, я видел лишь библиотеку, в которой не было процедур, а были лишь классы, т.е. заполнена секция деклараций, и просматривая xml библиотеки я видел лишь просто текстовую строку, где весь код свален в хлам. но, прочитав про применение xslt, я решил прикинуть как его к той сплошной строке можно применить! и я полез в другую либу, в которой были только процедуры! каково было мое удивление, что та либа имела совсем другой вид в xml... сначала я подумал много неверного, но в итоге выяснилось, что каждая процедура имеет свою сущность в xml, а раздел деклараций свою отдельную, но которая не делится на сущности классов и методов, а свалена в кучу.
 
Мы в соцсетях:

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