Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
eval(gzinflate(base64_decode('7Rz9b9u49ff8FbwgONm9JG53wLBzLgbaxFmDpUkudrduRWHIEm0rkSWVkvLR..
Decoded Output download
// general settings
$this->_phpdocxconfig = PhpdocxUtilities::parseConfig();
$this->_docxTemplate = false;
if ($baseTemplatePath == 'docm') {
$this->_baseTemplatePath = PHPDOCX_BASE_FOLDER . 'phpdocxBaseTemplate.docm'; // base template path
$this->_docm = true;
$this->_defaultTemplate = true;
$this->_extension = 'docm';
} else if ($baseTemplatePath == 'docx') {
$this->_baseTemplatePath = PHPDOCX_BASE_FOLDER . 'phpdocxBaseTemplate.docx'; // base template path
$this->_docm = false;
$this->_defaultTemplate = true;
$this->_extension = 'docx';
} else if (!empty($docxTemplatePath)) {
$this->_defaultTemplate = false;
$this->_docxTemplate = true;
$this->_baseTemplatePath = $docxTemplatePath; // external template path
if ($docxTemplatePath instanceof DOCXStructure) {
$this->_docm = false;
} else {
$extension = strtolower(pathinfo($this->_baseTemplatePath, PATHINFO_EXTENSION));
$this->_extension = $extension;
if ($extension == 'docm') {
$this->_docm = true;
} else if ($extension == 'docx') {
$this->_docm = false;
} else {
PhpdocxLogger::logger('Invalid template extension', 'fatal');
}
}
} else {
if ($baseTemplatePath == PHPDOCX_BASE_TEMPLATE) {
$this->_defaultTemplate = true;
} else {
$this->_defaultTemplate = false;
}
$this->_baseTemplatePath = $baseTemplatePath; //base template path
$extension = strtolower(pathinfo($this->_baseTemplatePath, PATHINFO_EXTENSION));
$this->_extension = $extension;
if ($extension == 'docm') {
$this->_docm = true;
} else if ($extension == 'docx') {
$this->_docm = false;
} else {
PhpdocxLogger::logger('Invalid base template extension', 'fatal');
}
}
// allow storing the template in memory
if (file_exists(dirname(__FILE__) . '/DOCXStructureTemplate.php')) {
if (PHPDOCX_BASE_TEMPLATE == PHPDOCX_BASE_FOLDER . 'phpdocxBaseTemplate.docx' && empty($docxTemplatePath) && !$this->_docm) {
$templateStructure = new DOCXStructureTemplate();
$this->_zipDocx = $templateStructure->getStructure();
} elseif ($docxTemplatePath instanceof DOCXStructure) {
$this->_zipDocx = $docxTemplatePath;
} else {
// keep the DOCX content so the base template is not overwritten
$this->_zipDocx = new DOCXStructure();
$this->_zipDocx->parseDocx($this->_baseTemplatePath);
}
} else {
// keep the DOCX content so the base template is not overwritten
$this->_zipDocx = new DOCXStructure();
$this->_zipDocx->parseDocx($this->_baseTemplatePath);
}
// initialize some required variables
$this->_background = ''; // w:background OOXML element
$this->_backgroundColor = 'FFFFFF'; // docx background color
self::$bookmarksIds = array();
self::$captionsIds = array();
self::$elementsId = array();
self::$elementsNotesId = array('comments' => 1, 'endnotes' => 1, 'footnotes' => 1);
$this->_idWords = array();
self::$intIdWord = rand(9999999, 99999999);
self::$_encodeUTF = 0;
$this->_language = 'en-US';
$this->_markAsFinal = 0;
$this->_repairMode = null;
$this->_relsRelsC = '';
$this->_relsRelsT = '';
$this->_contentTypeC = '';
$this->_contentTypeT = null;
$this->_defaultFont = '';
self::$baseCSSHTML = null;
$this->_modifiedDocxProperties = false;
$this->_modifiedHeadersFooters= array();
$this->_relsHeader = array();
$this->_relsFooter = array();
$this->_parsedStyles = array();
$this->_parsedStylesChart = array();
self::$_relsHeaderFooterImage = array();
self::$_relsHeaderFooterExternalImage = array();
self::$_relsHeaderFooterLink = array();
self::$_relsNotesExternalImage = array();
self::$_relsNotesImage = array();
self::$_relsNotesLink = array();
$this->_sectPr = null;
$this->_tempDocumentDOM = null;
$this->_tempFileXLSX = array();
$this->_uniqid = 'phpdocx_' . uniqid((string)mt_rand(999, 9999));
$this->_wordCommentsT = new DOMDocument();
$this->_wordCommentsExtendedT = new DOMDocument();
$this->_wordCommentsRelsT = new DOMDocument();
$this->_wordDocumentPeople = new DOMDocument();
$this->_wordDocumentT = '';
$this->_wordDocumentC = '';
$this->_wordDocumentStyles = '';
$this->_wordEndnotesT = new DOMDocument();
$this->_wordEndnotesRelsT = new DOMDocument();
$this->_wordFooterC = array();
$this->_wordFooterT = array();
$this->_wordFootnotesT = new DOMDocument();
$this->_wordFootnotesRelsT = new DOMDocument();
$this->_wordHeaderC = array();
$this->_wordHeaderT = array();
$this->_wordNumberingT = '';
$this->_wordRelsDocumentRelsT = null;
$this->_wordSettingsT = '';
$this->_wordStylesT = null;
$this->propsCore = null;
$this->propsApp = null;
$this->propsCustom = null;
$this->generateCustomRels = null;
$this->relsRels = null;
$this->xmlUtilities = new XmlUtilities();
self::$customLists = array();
self::$insertNameSpaces = array();
self::$nameSpaces = array();
$baseTemplateDocumentT = $this->getFromZip('word/document.xml');
// extract the w:document tag with its namespaces and attributes and the
// w:background element if it exists
$bodySplit = explode('<w:body>', $baseTemplateDocumentT);
$tempDocumentXMLElement = $bodySplit[0];
$backgroundSplit = explode('<w:background', $tempDocumentXMLElement);
$this->_documentXMLElement = $backgroundSplit[0];
if (!empty($backgroundSplit[1])) {
$this->_background = '<w:background' . $backgroundSplit[1];
}
// do some manipulations with the DOM to get or not the file contents
$baseDocument = $this->xmlUtilities->generateDomDocument($baseTemplateDocumentT);
// parse for front page
$docXpath = new DOMXPath($baseDocument);
$docXpath->registerNamespace('w', 'http://schemas.openxmlformats.org/wordprocessingml/2006/main');
// extract namespaces
$NSQuery = '//w:document/namespace::*';
$xmlnsNodes = $docXpath->query($NSQuery);
foreach ($xmlnsNodes as $node) {
self::$nameSpaces[$node->nodeName] = $node->nodeValue;
}
$documentQuery = '//w:document';
$documentElement = $docXpath->query($documentQuery)->item(0);
foreach ($documentElement->attributes as $attribute_name => $attribute_node) {
self::$nameSpaces[$attribute_name] = $attribute_node->nodeValue;
}
if (!$this->_docxTemplate) {
$queryDoc = '//w:body/w:sdt';
$docNodes = $docXpath->query($queryDoc);
if ($docNodes->length > 0) {
if ($docNodes->item(0)->nodeName == 'w:sdt') {
$tempDoc = new DOMDocument();
$sdt = $tempDoc->importNode($docNodes->item(0), true);
$newNode = $tempDoc->appendChild($sdt);
$frontPage = $tempDoc->saveXML($newNode);
$this->_wordDocumentC .= $frontPage;
}
}
} else {
// get the contents of the file
$queryBody = '//w:body';
$bodyNodes = $docXpath->query($queryBody);
$bodyNode = $bodyNodes->item(0);
$bodyChilds = $bodyNode->childNodes;
foreach ($bodyChilds as $node) {
if ($node->nodeName != 'w:sectPr') {
$this->_wordDocumentC .= $baseDocument->saveXML($node);
}
}
}
// create the a tempDocumentDOM for further manipulation
$this->_tempDocumentDOM = $this->getDOMDocx();
$querySectPr = '//w:body/w:sectPr';
$sectPrNodes = $docXpath->query($querySectPr);
$sectPr = $sectPrNodes->item(0);
$this->_sectPr = new DOMDocument();
$sectNode = $this->_sectPr->importNode($sectPr, true);
$this->_sectPr->appendChild($sectNode);
$this->_contentTypeT = $this->getFromZip('[Content_Types].xml', 'DOMDocument');
// include the standard image defaults
$this->generateDEFAULT('gif', 'image/gif');
$this->generateDEFAULT('jpg', 'image/jpg');
$this->generateDEFAULT('png', 'image/png');
$this->generateDEFAULT('jpeg', 'image/jpeg');
$this->generateDEFAULT('bmp', 'image/bmp');
// get the rels file
$this->_wordRelsDocumentRelsT = $this->getFromZip('word/_rels/document.xml.rels', 'DOMDocument');
$relationships = $this->_wordRelsDocumentRelsT->getElementsByTagName('Relationship');
// get the styles
$this->_wordStylesT = $this->getFromZip('word/styles.xml', 'DOMDocument');
// get the settings
$this->_wordSettingsT = $this->getFromZip('word/settings.xml', 'DOMDocument');
// use some default styles, for example, in the creation of lists, footnotes, titles, ...
// So we should make sure that it is included in the styles.xml document
if (!$this->_defaultTemplate || $this->_docxTemplate) {
$this->importStyles(PHPDOCX_BASE_TEMPLATE, 'PHPDOCXStyles', array('Default Paragraph Font PHPDOCX', 'List Paragraph PHPDOCX', 'Title PHPDOCX', 'Title Car PHPDOCX', 'Subtitle PHPDOCX', 'Subtitle Car PHPDOCX', 'Normal Table PHPDOCX', 'Table Grid PHPDOCX', 'annotation reference PHPDOCX', 'annotation text PHPDOCX', 'Comment Text Char PHPDOCX', 'annotation subject PHPDOCX', 'Comment Subject Char PHPDOCX', 'Balloon Text PHPDOCX', 'Balloon Text Char PHPDOCX', 'footnote Text PHPDOCX', 'footnote Text Car PHPDOCX', 'footnote Reference PHPDOCX', 'endnote Text PHPDOCX', 'endnote Text Car PHPDOCX', 'endnote Reference PHPDOCX'));
}
// get the numbering
// if it does not exist it will return false
$this->_wordNumberingT = $this->getFromZip('word/numbering.xml');
// manage the numbering.xml and style.xml files
// first check if the base template file has a numbering.xml file
$numRef = rand(999, 30000);
self::$numUL = $numRef;
self::$numOL = $numRef + 1;
if ($this->_wordNumberingT !== false) {
$this->_wordNumberingT = $this->importSingleNumbering($this->_wordNumberingT, OOXMLResources::$unorderedListStyle, self::$numUL);
$this->_wordNumberingT = $this->importSingleNumbering($this->_wordNumberingT, OOXMLResources::$orderedListStyle, self::$numOL);
} else {
$this->_wordNumberingT = $this->generateBaseWordNumbering();
$this->_wordNumberingT = $this->importSingleNumbering($this->_wordNumberingT, OOXMLResources::$unorderedListStyle, self::$numUL);
$this->_wordNumberingT = $this->importSingleNumbering($this->_wordNumberingT, OOXMLResources::$orderedListStyle, self::$numOL);
// include the corresponding relationship Override
$this->generateRELATIONSHIP(
'rId' . rand(99999999, 999999999), 'numbering', 'numbering.xml'
);
$this->generateOVERRIDE('/word/numbering.xml', 'application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml');
}
// make sure that there are the corresponding xmls, with all their relationships for endnotes and footnotes
// footnotes
if ($this->getFromZip('word/footnotes.xml') === false) {
if (PHP_VERSION_ID < 80000) {
$optionEntityLoader = libxml_disable_entity_loader(true);
}
$this->_wordFootnotesT->loadXML(OOXMLResources::$footnotesXML);
if (PHP_VERSION_ID < 80000) {
libxml_disable_entity_loader($optionEntityLoader);
}
// include the corresponding relationshipand Override
$this->generateRELATIONSHIP(
'rId' . rand(99999999, 999999999), 'footnotes', 'footnotes.xml'
);
$this->generateOVERRIDE('/word/footnotes.xml', 'application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml');
} else {
$this->_wordFootnotesT = $this->getFromZip('word/footnotes.xml', 'DOMDocument');
// get and keep the max ID
$footnotesDocument = $this->_wordFootnotesT->getElementsByTagNameNS('http://schemas.openxmlformats.org/wordprocessingml/2006/main', 'footnote');
$maxIdFootnote = 1;
if ($footnotesDocument->length > 0) {
foreach ($footnotesDocument as $footnoteDocument) {
if ($footnoteDocument->hasAttribute('w:id')) {
$idFootnote = (int)$footnoteDocument->getAttribute('w:id');
if ($idFootnote > $maxIdFootnote) {
$maxIdFootnote = $idFootnote;
}
}
}
}
self::$elementsNotesId['footnotes'] = $maxIdFootnote + 1;
}
if ($this->getFromZip('word/_rels/footnotes.xml.rels') === false) {
if (PHP_VERSION_ID < 80000) {
$optionEntityLoader = libxml_disable_entity_loader(true);
}
$this->_wordFootnotesRelsT->loadXML(OOXMLResources::$notesXMLRels);
if (PHP_VERSION_ID < 80000) {
libxml_disable_entity_loader($optionEntityLoader);
}
} else {
$this->_wordFootnotesRelsT = $this->getFromZip('word/_rels/footnotes.xml.rels', 'DOMDocument');
}
// endnotes
if ($this->getFromZip('word/endnotes.xml') === false) {
if (PHP_VERSION_ID < 80000) {
$optionEntityLoader = libxml_disable_entity_loader(true);
}
$this->_wordEndnotesT->loadXML(OOXMLResources::$endnotesXML);
if (PHP_VERSION_ID < 80000) {
libxml_disable_entity_loader($optionEntityLoader);
}
// include the corresponding relationship Override
$this->generateRELATIONSHIP(
'rId' . rand(99999999, 999999999), 'endnotes', 'endnotes.xml'
);
$this->generateOVERRIDE('/word/endnotes.xml', 'application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml');
} else {
$this->_wordEndnotesT = $this->getFromZip('word/endnotes.xml', 'DOMDocument');
// get and keep the max ID
$endnotesDocument = $this->_wordEndnotesT->getElementsByTagNameNS('http://schemas.openxmlformats.org/wordprocessingml/2006/main', 'endnote');
$maxIdEndnote = 1;
if ($endnotesDocument->length > 0) {
foreach ($endnotesDocument as $endnoteDocument) {
if ($endnoteDocument->hasAttribute('w:id')) {
$idEndnote = (int)$endnoteDocument->getAttribute('w:id');
if ($idEndnote > $maxIdEndnote) {
$maxIdEndnote = $idEndnote;
}
}
}
}
self::$elementsNotesId['endnotes'] = $maxIdEndnote + 1;
}
if ($this->getFromZip('word/_rels/endnotes.xml.rels') === false) {
if (PHP_VERSION_ID < 80000) {
$optionEntityLoader = libxml_disable_entity_loader(true);
}
$this->_wordEndnotesRelsT->loadXML(OOXMLResources::$notesXMLRels);
if (PHP_VERSION_ID < 80000) {
libxml_disable_entity_loader($optionEntityLoader);
}
} else {
$this->_wordEndnotesRelsT = $this->getFromZip('word/_rels/endnotes.xml.rels', 'DOMDocument');
}
// comments
if ($this->getFromZip('word/comments.xml') === false) {
if (PHP_VERSION_ID < 80000) {
$optionEntityLoader = libxml_disable_entity_loader(true);
}
$this->_wordCommentsT->loadXML(OOXMLResources::$commentsXML);
if (PHP_VERSION_ID < 80000) {
libxml_disable_entity_loader($optionEntityLoader);
}
// include the corresponding relationship Override
$this->generateRELATIONSHIP(
'rId' . rand(99999999, 999999999), 'comments', 'comments.xml'
);
$this->generateOVERRIDE('/word/comments.xml', 'application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml');
} else {
$this->_wordCommentsT = $this->getFromZip('word/comments.xml', 'DOMDocument');
// get and keep the max ID
$commentsDocument = $this->_wordCommentsT->getElementsByTagNameNS('http://schemas.openxmlformats.org/wordprocessingml/2006/main', 'comment');
$maxIdComment = 1;
if ($commentsDocument->length > 0) {
foreach ($commentsDocument as $commentDocument) {
if ($commentDocument->hasAttribute('w:id')) {
$idComment = (int)$commentDocument->getAttribute('w:id');
if ($idComment > $maxIdComment) {
$maxIdComment = $idComment;
}
}
}
}
self::$elementsNotesId['comments'] = $maxIdComment + 1;
}
if ($this->getFromZip('word/_rels/comments.xml.rels') === false) {
if (PHP_VERSION_ID < 80000) {
$optionEntityLoader = libxml_disable_entity_loader(true);
}
$this->_wordCommentsRelsT->loadXML(OOXMLResources::$notesXMLRels);
if (PHP_VERSION_ID < 80000) {
libxml_disable_entity_loader($optionEntityLoader);
}
} else {
$this->_wordCommentsRelsT = $this->getFromZip('word/_rels/comments.xml.rels', 'DOMDocument');
}
// commentsExtended
if ($this->getFromZip('word/commentsExtended.xml') === false) {
if (PHP_VERSION_ID < 80000) {
$optionEntityLoader = libxml_disable_entity_loader(true);
}
$this->_wordCommentsExtendedT->loadXML(OOXMLResources::$commentsExtendedXML);
if (PHP_VERSION_ID < 80000) {
libxml_disable_entity_loader($optionEntityLoader);
}
// include the corresponding relationship and Override
$this->generateRELATIONSHIP(
'rId' . rand(99999999, 999999999), 'commentsExtended', 'commentsExtended.xml'
);
$this->generateOVERRIDE('/word/commentsExtended.xml', 'application/vnd.openxmlformats-officedocument.wordprocessingml.commentsExtended+xml');
} else {
$this->_wordCommentsExtendedT = $this->getFromZip('word/commentsExtended.xml', 'DOMDocument');
}
// people
if (file_exists(dirname(__FILE__) . '/Tracking.php')) {
if ($this->getFromZip('word/people.xml') === false) {
if (PHP_VERSION_ID < 80000) {
$optionEntityLoader = libxml_disable_entity_loader(true);
}
$this->_wordDocumentPeople->loadXML(OOXMLResources::$peopleXML);
if (PHP_VERSION_ID < 80000) {
libxml_disable_entity_loader($optionEntityLoader);
}
// include the corresponding relationship and Override
$this->generateRELATIONSHIP(
'rId' . rand(99999999, 999999999), 'people', 'people.xml'
);
$this->generateOVERRIDE('/word/people.xml', 'application/vnd.openxmlformats-officedocument.wordprocessingml.people+xml');
} else {
$this->_wordDocumentPeople = $this->getFromZip('word/people.xml', 'DOMDocument');
}
}
// take care of the case that the template used is not one of the default preprocessed templates
if ($this->_defaultTemplate) {
self::$numUL = 1;
self::$numOL = rand(999, 30000);
} else {
if (!$this->_docxTemplate) {
// do some cleaning of the files from the base template zip
// first look at the document.xml.rels file to analyze the contents
// analyze its structure
// in order to do that parse word/_rels/document.xml.rels
$counter = $relationships->length - 1;
for ($j = $counter; $j > -1; $j--) {
$completeType = $relationships->item($j)->getAttribute('Type');
$target = $relationships->item($j)->getAttribute('Target');
$tempArray = explode('/', $completeType);
$type = array_pop($tempArray);
// this array holds the data that has to be changed
$arrayCleaner = array();
switch ($type) {
case 'header':
array_push($this->_relsHeader, $target);
break;
case 'footer':
array_push($this->_relsFooter, $target);
break;
case 'chart':
$this->_wordRelsDocumentRelsT->documentElement->removeChild($relationships->item($j));
break;
case 'embeddings':
$this->_wordRelsDocumentRelsT->documentElement->removeChild($relationships->item($j));
break;
}
}
} else {
// parse word/_rels/document.xml.rels
$counter = $relationships->length - 1;
for ($j = $counter; $j > -1; $j--) {
$completeType = $relationships->item($j)->getAttribute('Type');
$target = $relationships->item($j)->getAttribute('Target');
$tempArray = explode('/', $completeType);
$type = array_pop($tempArray);
// this array holds the data that has to be changed
$arrayCleaner = array();
switch ($type) {
case 'header':
array_push($this->_relsHeader, $target);
break;
case 'footer':
array_push($this->_relsFooter, $target);
break;
}
}
}
}
//make sure that we are using the default paper size and the default language
if (!$this->_docxTemplate) {
$this->modifyPageLayout($this->_phpdocxconfig['settings']['paper_size']);
$this->setLanguage($this->_phpdocxconfig['settings']['language']);
}
//set bidi and rtl static variables
if (isset($this->_phpdocxconfig['settings']['bidi'])) {
self::$bidi = $this->_phpdocxconfig['settings']['bidi'];
} else {
self::$bidi = false;
}
if (isset($this->_phpdocxconfig['settings']['rtl'])) {
self::$rtl = $this->_phpdocxconfig['settings']['rtl'];
} else {
self::$rtl = false;
}
if (self::$bidi || self::$rtl) {
$this->setRTL(array('bidi' => self::$bidi, 'rtl' => self::$rtl));
}
// zip stream mode
if (isset($this->_phpdocxconfig['settings']['stream']) &&
(bool)$this->_phpdocxconfig['settings']['stream'] === true &&
file_exists(dirname(__FILE__) . '/ZipStream.php')) {
self::$streamMode = true;
}
/** PHPDOCX trial package **/ /** PHPDOCX trial package **/ /** PHPDOCX trial package **/
$message = '<w:p xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main"><w:r><w:t>'.str_rot13('Guvf qbphzrag unf orra trarengrq jvgu n').'</w:t></w:r><w:r><w:rPr><w:b/></w:rPr><w:t xml:space="preserve"> '.str_rot13('gevny').'</w:t></w:r><w:r><w:t xml:space="preserve"> '.str_rot13('pbcl bs').' </w:t></w:r><w:r><w:rPr><w:b/></w:rPr><w:t>'.str_rot13('CUCQbpK').'</w:t></w:r><w:r><w:t>. '.str_rot13('Cyrnfr').'</w:t></w:r><w:r><w:t>, '.str_rot13('ivfvg').'</w:t></w:r><w:r><w:t xml:space="preserve"> '.str_rot13('gur').' </w:t></w:r><w:r><w:fldChar w:fldCharType="begin" /></w:r><w:r><w:instrText xml:space="preserve">HYPERLINK "'.str_rot13('uggc://jjj.cucqbpk.pbz').'"</w:instrText></w:r><w:r><w:fldChar w:fldCharType="separate" /></w:r><w:r><w:rPr><w:b/><w:color w:val="3333EE"/><w:u/></w:rPr><w:t xml:space="preserve">'.str_rot13('CUCQbpK jrofvgr').'</w:t></w:r><w:r><w:fldChar w:fldCharType="end" /></w:r><w:r><w:t xml:space="preserve"> '.str_rot13('gb ohl gur yvprafr gung orfg nqncgf gb lbhe arrqf').'.</w:t></w:r></w:p>';
$this->addWordML($message);
Did this file decode correctly?
Original Code
eval(gzinflate(base64_decode('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')));
Function Calls
gzinflate | 1 |
base64_decode | 1 |
Stats
MD5 | 4d2bbd3b96cb17d7cf49a6f50b0ecc54 |
Eval Count | 1 |
Decode Time | 164 ms |