2023-09-16 16:02:17 +05:30
|
|
|
package ldap
|
|
|
|
|
|
|
|
|
|
import (
|
2023-10-17 17:44:13 +05:30
|
|
|
lib_ldap "github.com/projectdiscovery/nuclei/v3/pkg/js/libs/ldap"
|
2023-09-16 16:02:17 +05:30
|
|
|
|
|
|
|
|
"github.com/dop251/goja"
|
2023-10-17 17:44:13 +05:30
|
|
|
"github.com/projectdiscovery/nuclei/v3/pkg/js/gojs"
|
2023-09-16 16:02:17 +05:30
|
|
|
)
|
|
|
|
|
|
|
|
|
|
var (
|
|
|
|
|
module = gojs.NewGojaModule("nuclei/ldap")
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func init() {
|
|
|
|
|
module.Set(
|
|
|
|
|
gojs.Objects{
|
|
|
|
|
// Functions
|
2024-02-06 04:02:53 +05:30
|
|
|
"DecodeADTimestamp": lib_ldap.DecodeADTimestamp,
|
|
|
|
|
"DecodeSID": lib_ldap.DecodeSID,
|
|
|
|
|
"DecodeZuluTimestamp": lib_ldap.DecodeZuluTimestamp,
|
|
|
|
|
"JoinFilters": lib_ldap.JoinFilters,
|
|
|
|
|
"NegativeFilter": lib_ldap.NegativeFilter,
|
2023-09-16 16:02:17 +05:30
|
|
|
|
|
|
|
|
// Var and consts
|
2024-02-06 04:02:53 +05:30
|
|
|
"FilterAccountDisabled": lib_ldap.FilterAccountDisabled,
|
|
|
|
|
"FilterAccountEnabled": lib_ldap.FilterAccountEnabled,
|
|
|
|
|
"FilterCanSendEncryptedPassword": lib_ldap.FilterCanSendEncryptedPassword,
|
|
|
|
|
"FilterDontExpirePassword": lib_ldap.FilterDontExpirePassword,
|
|
|
|
|
"FilterDontRequirePreauth": lib_ldap.FilterDontRequirePreauth,
|
|
|
|
|
"FilterHasServicePrincipalName": lib_ldap.FilterHasServicePrincipalName,
|
|
|
|
|
"FilterHomedirRequired": lib_ldap.FilterHomedirRequired,
|
|
|
|
|
"FilterInterdomainTrustAccount": lib_ldap.FilterInterdomainTrustAccount,
|
|
|
|
|
"FilterIsAdmin": lib_ldap.FilterIsAdmin,
|
|
|
|
|
"FilterIsComputer": lib_ldap.FilterIsComputer,
|
|
|
|
|
"FilterIsDuplicateAccount": lib_ldap.FilterIsDuplicateAccount,
|
|
|
|
|
"FilterIsGroup": lib_ldap.FilterIsGroup,
|
|
|
|
|
"FilterIsNormalAccount": lib_ldap.FilterIsNormalAccount,
|
|
|
|
|
"FilterIsPerson": lib_ldap.FilterIsPerson,
|
|
|
|
|
"FilterLockout": lib_ldap.FilterLockout,
|
|
|
|
|
"FilterLogonScript": lib_ldap.FilterLogonScript,
|
|
|
|
|
"FilterMnsLogonAccount": lib_ldap.FilterMnsLogonAccount,
|
|
|
|
|
"FilterNotDelegated": lib_ldap.FilterNotDelegated,
|
|
|
|
|
"FilterPartialSecretsAccount": lib_ldap.FilterPartialSecretsAccount,
|
|
|
|
|
"FilterPasswordCantChange": lib_ldap.FilterPasswordCantChange,
|
|
|
|
|
"FilterPasswordExpired": lib_ldap.FilterPasswordExpired,
|
|
|
|
|
"FilterPasswordNotRequired": lib_ldap.FilterPasswordNotRequired,
|
|
|
|
|
"FilterServerTrustAccount": lib_ldap.FilterServerTrustAccount,
|
|
|
|
|
"FilterSmartCardRequired": lib_ldap.FilterSmartCardRequired,
|
|
|
|
|
"FilterTrustedForDelegation": lib_ldap.FilterTrustedForDelegation,
|
|
|
|
|
"FilterTrustedToAuthForDelegation": lib_ldap.FilterTrustedToAuthForDelegation,
|
|
|
|
|
"FilterUseDesKeyOnly": lib_ldap.FilterUseDesKeyOnly,
|
|
|
|
|
"FilterWorkstationTrustAccount": lib_ldap.FilterWorkstationTrustAccount,
|
2023-09-16 16:02:17 +05:30
|
|
|
|
|
|
|
|
// Types (value type)
|
2024-02-06 04:02:53 +05:30
|
|
|
"ADObject": func() lib_ldap.ADObject { return lib_ldap.ADObject{} },
|
|
|
|
|
"Client": lib_ldap.NewClient,
|
|
|
|
|
"Config": func() lib_ldap.Config { return lib_ldap.Config{} },
|
|
|
|
|
"Metadata": func() lib_ldap.Metadata { return lib_ldap.Metadata{} },
|
2023-09-16 16:02:17 +05:30
|
|
|
|
|
|
|
|
// Types (pointer type)
|
2024-02-06 04:02:53 +05:30
|
|
|
"NewADObject": func() *lib_ldap.ADObject { return &lib_ldap.ADObject{} },
|
|
|
|
|
"NewConfig": func() *lib_ldap.Config { return &lib_ldap.Config{} },
|
|
|
|
|
"NewMetadata": func() *lib_ldap.Metadata { return &lib_ldap.Metadata{} },
|
2023-09-16 16:02:17 +05:30
|
|
|
},
|
|
|
|
|
).Register()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func Enable(runtime *goja.Runtime) {
|
|
|
|
|
module.Enable(runtime)
|
|
|
|
|
}
|