activex 메소드 확인하는 법


당연히 progid 또는 clsid 는 알고 있어야 한다. 일반적으로 웹 소스 상에서 바로 보는 것은 clsid



1) com/ole viewer 로 확인



2) com raider 로 확인(사실 이제 가장 깔끔한듯. 매뉴얼 퍼징 용도로는..)



3) 프로그래밍


- c 언어로 하면 쉽게 할  수 있으나, python 을 좋아하므로...powershell 을 이용해서 python 으로 하는법(?)



# powershell #


PS C:\Users\hyunmini> $clsid = New-Object Guid 'DC2D84BD-498D-48B1-808C-60236E7FE0C8'

PS C:\Users\hyunmini> $type = [Type]::GetTypeFromCLSID($clsid)

PS C:\Users\hyunmini> $object = [Activator]::CreateInstance($type)

PS C:\Users\hyunmini> $object | get-member



   TypeName: System.__ComObject#{684c87de-557e-4a17-aea5-036ff1eeca95}


Name                MemberType            Definition

----                ----------            ----------

AddFile             Method                void AddFile (string, string)

AddTempFile         Method                void AddTempFile (string, uint, st...

AppendDragDrop      Method                void AppendDragDrop (Variant, string)

AppendFilter        Method                void AppendFilter (Variant, Variant)

AppendPostData      Method                void AppendPostData (Variant, Vari...

ClearDragDrop       Method                void ClearDragDrop ()

ClearFilter         Method                void ClearFilter ()

ClearPostData       Method                void ClearPostData () 

                                ...



# python (-_-;;)


p = subprocess.Popen(

[

"powershell.exe", 

"-command",

"&{ $clsid = New-Object Guid '%s';$type = [Type]::GetTypeFromCLSID($clsid);$object= [Activator]::CreateInstance($type);get-member -inputObject $object; }" % clsid

], stdout=subprocess.PIPE)

p_result, err = p.communicate()

+ Recent posts