• 🚨 29 мая стартует курс «Пентест Active Directory: от теории к практике» от Академии Кодебай

    🔍 Изучите реальные техники атак на инфраструктуру Active Directory: от первоначального доступа до полной компрометации.
    🛠️ Освойте инструменты, такие как BloodHound, Mimikatz, CrackMapExec и другие.
    🧪 Пройдите практические лабораторные работы, имитирующие реальные сценарии атак.
    🧠 Получите знания, которые помогут вам стать востребованным специалистом в области информационной безопасности.

    После старта курса запись открыта еще 10 дней Подробнее о курсе ...

  • Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

Связка Lotus-pwa

  • Автор темы Автор темы Реник
  • Дата начала Дата начала
Р

Реник

Здравствуйте, товарищи!!
Интересуюсь вот таким вопросом: у меня есть агент,который запускает метод в стороннем web-service. Для связи с web-service я использую Soap-Toolkit.

Но при отработке агента возникает ошибка ,что ProjectName missing.
Не подскажите в чём проблема ????

вот код вызываемого агента:

Код:
Dim Connector As Variant, Serializer As Variant, Reader As Variant
Set Serializer =createobject("MSOSOAP.SoapSerializer30")
Set connector =createobject("MSOSOAP.HttpConnector30")
Set xmldom=createobject ("Msxml2.DOMDocument.5.0")
Set reader=createobject ("MSOSOAP.SoapReader30")
Set Client =CreateObject("MSOSOAP.SoapClient30") 
Call Client.mssoapinit (wsdllink) 
Connector.Property("EndPointURL") = wsdllink
Print "задаём логин и пароль пользователя,под которым идёт обращение"
'client.ConnectorProperty("AuthUser") = "pbrfilesinout"
'client.ConnectorProperty("AuthPassword") = ",jcchtathtyn" 
'Client.ConnectorProperty("WinHTTPAuthScheme") = 1 
Print "Коннектимся к сервису"
Call Connector.Connect
'	Connector.Property("SoapAction") = "CeatePWA"

Call Connector.BeginMessage
Stop
' устанавливаем Тайм-аут ,чтобы сервис сммог отработать нормально
Client.ConnectorProperty("Timeout") = 700000 

' вызываем метод из wsdl
'Set Res=Client.CeatePWA(param1,param2,param3)
' ловим выходной поток отработки метода wsdl- файла
Serializer.Init Connector.InputStream
Serializer.StartEnvelope "SOAP-ENV" , "http://schemas.xmlsoap.org/soap/encoding/"
Serializer.StartBody
Stop

Serializer.StartElement "CeatePWA" , "http://tempuri.org/"

Print "Передаём в метод параметры"
Serializer.startElement "loginGMP"
Serializer.writeString param1
Serializer.EndElement
Serializer.startElement "number"
Serializer.writeString param2
Serializer.EndElement

Serializer.startElement "urlHook"
Serializer.writeString param3
Serializer.EndElement
Serializer.EndElement
Print "Закончили передачу параметров"
'	Serializer.WriteXml ("C:\MyService.xml")

Serializer.endBody

Serializer.endEnvelope

Connector.EndMessage
errh =Client.FaultString
If errh <> "" Then
Print "Ошибка" +errh
End If
Print "Читаем исходящий поток"
Reader.Load Connector.OutputStream
Print "проверка на наличие ошибок"
If Not ( Reader.faultstring Is Nothing)Then
Print "нашли ошибку при отработке сервиса"
Print Cstr( Reader.faultstring.text )
Else 
Print " Смотрим результаты работы"
'	Msgbox (reader.RPCResult.text)
Msgbox Reader.DOM.xml
End If
<table valign="top" style='margin:0;width:100%;border:1px dashed red;'>[tr]<td align='middle' bgcolor='#ff6060' valign='top' width='1%'>
<FONT color='#ffffff' size='+3'> ! </font>
</td><td align="midle" valign='top' style='background:#fff;'>добавлен тег кода</td>[/tr]</table>
 

Вложения

  • ______.doc
    ______.doc
    32,5 КБ · Просмотры: 210
может кому и интересно отлаживать вашу простыню, сервис, да ещё и микрософтовый КОМ :newconfus:
а не прощели было взять тулзу для проверки сервиса (к-л) и сначала прогнать через неё?
 
проверяли: самм сервис работает нормально.
 
Реник
Для начала я бы добавил в начало кода On Error Goto ErrHandler, а в конец
exit sub
ErrHandler:
print "Ошибка " & cstr(Err) & " (" & Error & ") в строке " & Cstr(erl)

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

Судя по картинке, сервису не хватает для нормальной отработки имени проекта. Как работать с сервисами PWA надо либо гуглить, либо спрашивать в других форумах — это уже не лотусовый вопрос.
 
и конкретно - разбираться с КОМом
видать параметры не те или не туда передаются...
а чтобы получить более управляемый код - делаем на java
 
Ребята , всем спасибо за помощь! Но проблему решил самостоятельно: банально не передавал необходимые параметры в метод, хотя был уверен,что всё в порядке.

Комуц интересно,то вот код,котрый мне помог решить проблему.

<!--shcode--><pre><code class='Dim Connector As Variant, Serializer As Variant, Reader As Variant

' Получаем основные параметры для работы метода
param1=doc.GetItemValue("Chief_Executor")(0)
param2=doc.GetItemValue("Final_Number")(0)
param3= doc.GetItemValue("CRM_Hook_Workspace_Link")(0)



Set Client =CreateObject("MSOSOAP.SoapClient30")
Set Serializer =createobject("MSOSOAP.SoapSerializer30")
Set connector =createobject("MSOSOAP.HttpConnector30")
Set xmldom=createobject ("Msxml2.DOMDocument.5.0")
Set reader=createobject ("MSOSOAP.SoapReader30")



Call Client.mssoapinit (wsdllink)
Connector.Property("EndPointURL") = wsdllink


Call Connector.Connect
' устанавливаем Тайм-аут ,чтобы сервис сммог отработать нормально
Client.ConnectorProperty("Timeout") = 700000
Connector.Property("SoapAction") ="http://tempuri.org/CeatePWA"

Call Connector.BeginMessage

' ловим выходной поток отработки метода wsdl- файла
Serializer.Init Connector.InputStream
Serializer.StartEnvelope "SOAP-ENV" , "http://schemas.xmlsoap.org/soap/encoding/"
Serializer.StartBody


Serializer.StartElement "CeatePWA" , "http://tempuri.org/"


Serializer.startElement "loginGMP" , "http://tempuri.org/"
'Serializer.writeString "Луппов Александр Вячеславович"
Serializer.writeString param1
Serializer.EndElement

Serializer.startElement "number" , "http://tempuri.org/"
' Serializer.writeString "zzzzzz11"
Serializer.writeString param2

Serializer.EndElement

Serializer.startElement "urlHook" , "http://tempuri.org/"
' Serializer.writeString "https://store.it.ru/hook/2009/11/2009-000004809"
Serializer.writeString param3
Serializer.EndElement
Serializer.EndElement


Serializer.endBody

Serializer.endEnvelope

Connector.EndMessage

'Проверяем на наличие ошибок

errh =Client.FaultString
If errh <> "" Then
Print "Ошибка" +errh
End If


'Читаем исходящий поток
Reader.Load Connector.OutputStream

Set SoapServer = CreateObject("MSSOAP.SoapServer30")

SoapServer.SoapInvoke Connector.InputStream, Connector.OutputStream, SOAPAction

runmethodfromwsdlfile=Reader.Body.xml'>код[/CODE]
 
Мы в соцсетях:

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

Курс AD