Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
function mo_saml_redirect_for_authentication($la) { if (mo_saml_is_exten..
Decoded Output download
<? function mo_saml_redirect_for_authentication($la)
{
if (mo_saml_is_extension_installed("dom")) {
goto Fa;
}
throw new Mo_SAML_DOM_Extension_Disabled_Exception("DOMDocument Not Installed.");
Fa:
if (mo_saml_is_extension_installed("curl")) {
goto dK;
}
throw new Mo_SAML_CURL_Extension_Disabled_Exception("Curl Extension Not Installed.");
dK:
if (!(get_option(Mo_Saml_Options_Enum_Sso_Login::REDIRECT_IDP) == "true")) {
goto Ep;
}
$cb = home_url() . "/?option=saml_user_login&redirect_to=";
if (is_feed()) {
goto yk;
}
echo "<script>window.location.href='{$cb}'+encodeURIComponent(window.location.href);</script>";
exit;
yk:
Ep:
if (get_option(Mo_Saml_Options_Enum_Sso_Login::REDIRECT_IDP) == "true" || get_option(Mo_Saml_Options_Enum_Sso_Login::AUTO_REDIRECT) == "true") {
goto wn;
}
if (!(get_option(Mo_Saml_Options_Enum_Sso_Login::REDIRECT_TO_WP_LOGIN) == "true")) {
goto pD;
}
if (!(mo_saml_is_sp_configured() && !is_user_logged_in())) {
goto eF;
}
$Cs = site_url() . "/wp-login.php";
if (empty($la)) {
goto ep;
}
$Cs = $Cs . "?redirect_to=" . urlencode($la) . "&reauth=1";
ep:
header("Location: " . $Cs);
exit;
eF:
pD:
goto s0;
wn:
if (!(mo_saml_is_customer_registered_saml() && mo_saml_is_sp_configured() && !is_user_logged_in())) {
goto Ka;
}
$i8 = get_option(Mo_Saml_Options_Enum_Identity_Provider::SP_BASE_URL);
if (!empty($i8)) {
goto wB;
}
$i8 = home_url();
wB:
if (!(get_option(Mo_Saml_Options_Enum_Sso_Login::RELAY_STATE) && get_option(Mo_Saml_Options_Enum_Sso_Login::RELAY_STATE) != '')) {
goto jt;
}
$la = get_option(Mo_Saml_Options_Enum_Sso_Login::RELAY_STATE);
jt:
$la = mo_saml_get_relay_state($la);
$rZ = empty($la) ? "/" : $la;
$RX = LicenseHelper::getCurrentOption(Mo_Saml_Options_Enum_Service_Provider::LOGIN_URL);
$RX = !is_array($RX) ? htmlspecialchars_decode($RX) : $RX;
$wK = LicenseHelper::getCurrentOption(Mo_Saml_Options_Enum_Service_Provider::LOGIN_BINDING_TYPE);
$Hs = get_option(Mo_Saml_Options_Enum_Sso_Login::FORCE_AUTHENTICATION);
$dD = $i8 . "/";
$za = get_option(Mo_Saml_Options_Enum_Identity_Provider::SP_ENTITY_ID);
$Kj = LicenseHelper::getCurrentOption(Mo_Saml_Options_Enum_Service_Provider::NAMEID_FORMAT);
if (!empty($Kj)) {
goto rj;
}
$Kj = Mo_Saml_Options_Enum_Nameid_Formats::UNSPECIFIED;
rj:
if (!empty($za)) {
goto qa;
}
$za = $i8 . "/wp-content/plugins/miniorange-saml-20-single-sign-on/";
qa:
if (!("Inactive" === get_option(Mo_Saml_Options_Enum_Service_Provider::IDP_STATUS))) {
goto u2;
}
throw new Mo_SAML_IDP_Status_Inactive_Exception("IDP Not Enabled.");
u2:
$f7 = SAMLSPUtilities::createAuthnRequest($dD, $za, $RX, $Hs, $wK, $Kj);
if (empty($wK) || $wK == "HttpRedirect") {
goto Ln;
}
if (!(LicenseHelper::getCurrentOption(Mo_Saml_Options_Enum_Service_Provider::REQUEST_SIGNED) == "unchecked")) {
goto aq;
}
$Ce = base64_encode($f7);
SAMLSPUtilities::postSAMLRequest($RX, $Ce, $rZ);
exit;
aq:
$Ce = SAMLSPUtilities::signXML($f7, "NameIDPolicy");
SAMLSPUtilities::postSAMLRequest($RX, $Ce, $rZ);
goto lH;
Ln:
$lc = $RX;
if (strpos($RX, "?") !== false) {
goto B6;
}
$lc .= "?";
goto Qx;
B6:
$lc .= "&";
Qx:
if (!(LicenseHelper::getCurrentOption(Mo_Saml_Options_Enum_Service_Provider::REQUEST_SIGNED) == "unchecked")) {
goto Wc;
}
$lc .= "SAMLRequest=" . $f7 . "&RelayState=" . urlencode($rZ);
header("cache-control: max-age=0, private, no-store, no-cache, must-revalidate");
header("Location: " . $lc);
exit;
Wc:
$f7 = "SAMLRequest=" . $f7 . "&RelayState=" . urlencode($rZ) . "&SigAlg=" . urlencode(XMLSecurityKey::RSA_SHA256);
$Ro = array("type" => "private");
$Ln = new XMLSecurityKey(XMLSecurityKey::RSA_SHA256, $Ro);
$rX = get_option(Mo_Saml_Options_Enum_Current_Cerficates::CURRENT_CERT_PRIVATE_KEY);
$Ln->loadKey($rX, FALSE);
$cF = new XMLSecurityDSig();
$EJ = $Ln->signData($f7);
$EJ = base64_encode($EJ);
$lc .= $f7 . "&Signature=" . urlencode($EJ);
header("cache-control: max-age=0, private, no-store, no-cache, must-revalidate");
header("Location: " . $lc);
exit;
lH:
Ka:
s0:
} ?>
Did this file decode correctly?
Original Code
function mo_saml_redirect_for_authentication($la)
{
if (mo_saml_is_extension_installed("\x64\157\155")) {
goto Fa;
}
throw new Mo_SAML_DOM_Extension_Disabled_Exception("\104\x4f\x4d\104\157\143\x75\155\x65\156\164\40\x4e\x6f\164\40\111\156\x73\164\141\x6c\154\145\x64\x2e");
Fa:
if (mo_saml_is_extension_installed("\x63\x75\x72\154")) {
goto dK;
}
throw new Mo_SAML_CURL_Extension_Disabled_Exception("\103\x75\x72\154\x20\x45\x78\x74\145\x6e\x73\151\157\156\x20\116\x6f\x74\x20\111\156\x73\x74\141\x6c\x6c\145\x64\x2e");
dK:
if (!(get_option(Mo_Saml_Options_Enum_Sso_Login::REDIRECT_IDP) == "\164\x72\x75\145")) {
goto Ep;
}
$cb = home_url() . "\x2f\77\157\160\x74\151\157\156\75\163\141\x6d\x6c\x5f\165\x73\145\162\137\x6c\x6f\x67\151\156\x26\x72\145\144\151\x72\145\143\164\137\164\x6f\75";
if (is_feed()) {
goto yk;
}
echo "\74\163\x63\162\151\x70\x74\76\x77\151\x6e\x64\157\x77\56\x6c\x6f\x63\141\x74\151\x6f\x6e\x2e\x68\x72\x65\146\x3d\47{$cb}\x27\x2b\145\156\x63\157\x64\x65\x55\x52\x49\103\157\155\160\x6f\x6e\x65\156\x74\x28\167\151\156\x64\157\167\56\154\x6f\143\141\x74\x69\157\156\x2e\x68\162\145\146\x29\73\x3c\x2f\x73\x63\x72\x69\x70\x74\x3e";
exit;
yk:
Ep:
if (get_option(Mo_Saml_Options_Enum_Sso_Login::REDIRECT_IDP) == "\164\x72\x75\145" || get_option(Mo_Saml_Options_Enum_Sso_Login::AUTO_REDIRECT) == "\x74\162\x75\x65") {
goto wn;
}
if (!(get_option(Mo_Saml_Options_Enum_Sso_Login::REDIRECT_TO_WP_LOGIN) == "\164\x72\x75\x65")) {
goto pD;
}
if (!(mo_saml_is_sp_configured() && !is_user_logged_in())) {
goto eF;
}
$Cs = site_url() . "\x2f\x77\160\55\154\157\147\151\156\x2e\x70\x68\160";
if (empty($la)) {
goto ep;
}
$Cs = $Cs . "\77\x72\145\144\x69\162\145\143\164\137\164\x6f\75" . urlencode($la) . "\x26\x72\145\x61\x75\164\150\75\61";
ep:
header("\x4c\157\143\x61\x74\151\x6f\x6e\72\40" . $Cs);
exit;
eF:
pD:
goto s0;
wn:
if (!(mo_saml_is_customer_registered_saml() && mo_saml_is_sp_configured() && !is_user_logged_in())) {
goto Ka;
}
$i8 = get_option(Mo_Saml_Options_Enum_Identity_Provider::SP_BASE_URL);
if (!empty($i8)) {
goto wB;
}
$i8 = home_url();
wB:
if (!(get_option(Mo_Saml_Options_Enum_Sso_Login::RELAY_STATE) && get_option(Mo_Saml_Options_Enum_Sso_Login::RELAY_STATE) != '')) {
goto jt;
}
$la = get_option(Mo_Saml_Options_Enum_Sso_Login::RELAY_STATE);
jt:
$la = mo_saml_get_relay_state($la);
$rZ = empty($la) ? "\57" : $la;
$RX = LicenseHelper::getCurrentOption(Mo_Saml_Options_Enum_Service_Provider::LOGIN_URL);
$RX = !is_array($RX) ? htmlspecialchars_decode($RX) : $RX;
$wK = LicenseHelper::getCurrentOption(Mo_Saml_Options_Enum_Service_Provider::LOGIN_BINDING_TYPE);
$Hs = get_option(Mo_Saml_Options_Enum_Sso_Login::FORCE_AUTHENTICATION);
$dD = $i8 . "\x2f";
$za = get_option(Mo_Saml_Options_Enum_Identity_Provider::SP_ENTITY_ID);
$Kj = LicenseHelper::getCurrentOption(Mo_Saml_Options_Enum_Service_Provider::NAMEID_FORMAT);
if (!empty($Kj)) {
goto rj;
}
$Kj = Mo_Saml_Options_Enum_Nameid_Formats::UNSPECIFIED;
rj:
if (!empty($za)) {
goto qa;
}
$za = $i8 . "\57\167\160\x2d\143\x6f\156\x74\x65\x6e\x74\57\160\x6c\x75\147\x69\x6e\x73\x2f\x6d\x69\x6e\x69\157\162\141\x6e\x67\x65\x2d\x73\x61\155\x6c\55\x32\60\55\163\151\x6e\x67\154\x65\55\x73\x69\x67\x6e\x2d\x6f\x6e\x2f";
qa:
if (!("\111\x6e\141\143\164\151\x76\145" === get_option(Mo_Saml_Options_Enum_Service_Provider::IDP_STATUS))) {
goto u2;
}
throw new Mo_SAML_IDP_Status_Inactive_Exception("\x49\x44\120\x20\x4e\x6f\164\x20\x45\x6e\141\x62\x6c\145\144\56");
u2:
$f7 = SAMLSPUtilities::createAuthnRequest($dD, $za, $RX, $Hs, $wK, $Kj);
if (empty($wK) || $wK == "\110\164\x74\160\x52\145\144\151\162\145\x63\164") {
goto Ln;
}
if (!(LicenseHelper::getCurrentOption(Mo_Saml_Options_Enum_Service_Provider::REQUEST_SIGNED) == "\x75\156\x63\150\x65\x63\153\145\144")) {
goto aq;
}
$Ce = base64_encode($f7);
SAMLSPUtilities::postSAMLRequest($RX, $Ce, $rZ);
exit;
aq:
$Ce = SAMLSPUtilities::signXML($f7, "\116\x61\155\145\111\104\x50\x6f\x6c\151\x63\171");
SAMLSPUtilities::postSAMLRequest($RX, $Ce, $rZ);
goto lH;
Ln:
$lc = $RX;
if (strpos($RX, "\77") !== false) {
goto B6;
}
$lc .= "\x3f";
goto Qx;
B6:
$lc .= "\46";
Qx:
if (!(LicenseHelper::getCurrentOption(Mo_Saml_Options_Enum_Service_Provider::REQUEST_SIGNED) == "\165\156\143\x68\145\143\153\145\x64")) {
goto Wc;
}
$lc .= "\x53\x41\115\114\x52\145\x71\165\145\163\164\75" . $f7 . "\46\x52\x65\x6c\141\171\123\x74\x61\x74\145\75" . urlencode($rZ);
header("\x63\141\x63\x68\145\x2d\x63\x6f\x6e\x74\x72\x6f\154\72\40\155\x61\170\55\x61\x67\x65\x3d\60\x2c\x20\160\162\x69\166\x61\x74\145\x2c\x20\156\157\55\x73\x74\157\x72\x65\x2c\x20\156\157\x2d\x63\x61\143\150\x65\54\x20\x6d\165\163\164\x2d\x72\145\x76\x61\x6c\x69\x64\x61\164\145");
header("\x4c\157\143\x61\x74\151\157\156\x3a\40" . $lc);
exit;
Wc:
$f7 = "\123\x41\115\x4c\x52\145\x71\165\145\163\164\75" . $f7 . "\46\122\x65\x6c\141\171\123\164\141\164\145\75" . urlencode($rZ) . "\46\123\x69\147\101\x6c\x67\x3d" . urlencode(XMLSecurityKey::RSA_SHA256);
$Ro = array("\164\171\x70\145" => "\160\x72\151\166\x61\164\145");
$Ln = new XMLSecurityKey(XMLSecurityKey::RSA_SHA256, $Ro);
$rX = get_option(Mo_Saml_Options_Enum_Current_Cerficates::CURRENT_CERT_PRIVATE_KEY);
$Ln->loadKey($rX, FALSE);
$cF = new XMLSecurityDSig();
$EJ = $Ln->signData($f7);
$EJ = base64_encode($EJ);
$lc .= $f7 . "\46\x53\x69\x67\x6e\x61\x74\165\x72\145\x3d" . urlencode($EJ);
header("\x63\x61\x63\x68\145\55\143\x6f\x6e\x74\162\157\x6c\x3a\40\x6d\x61\170\55\x61\x67\145\75\x30\x2c\40\160\162\x69\166\141\164\145\x2c\40\156\157\x2d\163\x74\157\162\x65\x2c\x20\x6e\157\55\x63\141\143\x68\145\x2c\40\x6d\165\163\x74\x2d\162\145\166\x61\154\151\x64\x61\x74\145");
header("\114\x6f\143\141\x74\x69\157\156\x3a\40" . $lc);
exit;
lH:
Ka:
s0:
}
Function Calls
None |
Stats
MD5 | 072b7aa7c07c56e3d24ce18b029b8200 |
Eval Count | 0 |
Decode Time | 61 ms |