{"id":6463,"date":"2019-04-30T15:53:11","date_gmt":"2019-04-30T22:53:11","guid":{"rendered":"https:\/\/www.acalvio.com\/?p=6463"},"modified":"2019-04-30T15:53:11","modified_gmt":"2019-04-30T22:53:11","slug":"using-deep-learning-for-information-security-part-2","status":"publish","type":"post","link":"https:\/\/acalvio.p2staging.us\/index.php\/2019\/04\/30\/using-deep-learning-for-information-security-part-2\/","title":{"rendered":"Using Deep Learning for Information Security &#8211; Part 2"},"content":{"rendered":"<p style=\"text-align: center;\"><span style=\"font-weight: 400;\">Authors: Santosh Kosgi, Mohammad Waseem, Arunabha Choudhury, and Satnam Singh<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Deep Learning-based methods have been successfully applied to various computer vision and NLP based problems recently [1]. AI researchers have achieved statistically significant improvements in pushing the benchmarks for state of the art algorithms in object detection, language translation, and sentiment analysis. However, the application of Deep Learning in Information Security (InfoSec) is still in its nascent stages. We introduced <a href=\"https:\/\/www.acalvio.com\/using-deep-learning-for-information-security-part-1\/\">deep learning and its applications for InfoSec<\/a> in our article [2]; this blog is a continuation of this topic. <a href=\"https:\/\/www.acalvio.com\/detection-of-prevalent-threats-by-distributed-deception\/\">Malware detection<\/a> and network intrusion detection are two such areas where deep learning has shown significant improvements over the rule-based and classic machine learning-based solutions [3]. Specifically, we demonstrate the power of deep neural networks using Tensorflow, Keras to detect obfuscated PowerShell scripts. <\/span><br \/>\n<span style=\"font-weight: 400;\">PowerShell is a task automation and configuration management framework consisting of a robust command line shell. It was made open sourced and cross-platform compatible by Microsoft since August 2016. PowerShell has been heavily exploited tool in various cyber attacks scenarios. According to a research study by Symantec, nearly 95.4% of all scripts analyzed by Symantec Blue Coat Sandbox were malicious[4]. The Odinaff hacker group leveraged malicious PowerShell scripts as part of its attacks on banks and other financial institutions [5]. One can find many tools like PowerShell Empire[6] and PowerSploit[7] on the internet that can be used for reconnaissance, privilege escalation, lateral movement, persistence, defense evasion, and exfiltration. The adversaries typically use two techniques to evade detection: First, by running fileless malware, they load malicious scripts downloaded from the internet directly into memory, thereby evading Antivirus (AV) file scanning. Secondly, they use obfuscation to make their code challenging to decode, thus making it more difficult for AV or analyst to figure out the intent of the script. Obfuscation of PowerShell scripts for malicious intent is on the rise and task of analyzing them are made even more difficult due to the high flexibility of its syntax. <\/span><span style=\"font-weight: 400;\">In Acalvio high interaction decoys, we can monitor PowerShell logs, commands, and scripts that the attacker tried to execute in the decoy. We collect these logs and analyze them in real time and detect whether the script is obfuscated or not.<\/span><br \/>\n<b>Problem:<\/b><br \/>\n<span style=\"font-weight: 400;\">For a Windows operating system, Microsoft PowerShell is an ideal candidate for the attackerb\u0000\u0019s tool. Firstly, it is installed by default in Windows and secondly, attackers are better off using existing tools that allow them to blend well and possibly evade Antivirus (AV). Since PowerShell 3.0 Microsoft has enhanced PowerShell logging considerably. If Script Block Logging is enabled, then one can capture commands and scripts executed through PowerShell in the event logs. These logs can be analyzed to detect and block malicious scripts. Obfuscation is typically used to evade detection. Daniel and Holmes address this problem of detecting obfuscated scripts in their Blackhat paper [8]. They used Logistic Regression classifier with Gradient Descent method to achieve a reasonable classification accuracy to separate the obfuscated script from clean scripts. However, using a deep feed-forward neural network (FNN) may enhance other performance metrics such as precision and recall. Hence in this blog, we decided to use the deep neural network and compared the performance metrics with different machine learning (ML) classifiers.<\/span><br \/>\n<b>Dataset<\/b><br \/>\n<span style=\"font-weight: 400;\">We use the PowerShellCorpus dataset published and open sourced by Daniel [9] for our data experiments. The dataset consists of around ~300k PowerShell scripts scraped from various sources on the internet like Github, PowerShell Gallery, and Technet. Apart from this we also scraped PowerShell scripts from Poshcode [10] and added to the corpus. Finally, we had nearly 3 GB of script data consisting of 300K clean scripts. We have used Invoke-Obfuscation [11] tool to obfuscate the scripts. Once we have obfuscated all scripts using this tool, we have a labeled data set consisting of class label as clean or obfuscated script.<\/span><br \/>\n<b>Data Experiments:<\/b><br \/>\n<span style=\"font-weight: 400;\">All the activities performed by an attacker in a high interaction decoy are malicious. However, obfuscation detection asserts the presence of an advanced attacker. Here is a simple PowerShell command to get a list of processes:<\/span><br \/>\n<span style=\"font-weight: 400;\">Get-Process| Where($_.Handles -gt 600}| sort Handles| Format &#8211; Table<\/span><br \/>\n<span style=\"font-weight: 400;\">This command may be obfuscated as:<\/span><br \/>\n<span style=\"font-weight: 400;\">(((b\u0000\u001c{2}{9}{12}{0}{3}{10}{13}{4}{18}{8}{17}{11}{5}{16}{1}{15}{14}{7}{19}{6}&#8221;-f&#8217;-P&#8217;,&#8217;es&#8217;,&#8217;G&#8217;,&#8217;rocess8Dy Whe&#8217;,&#8217; {&#8216;,&#8217;S&#8217;,&#8217;le&#8217;,&#8217;-Ta&#8217;,&#8217;-gt&#8217;,&#8217;e&#8217;,&#8217;r&#8217;,&#8217;y &#8216;,&#8217;t&#8217;,&#8217;e&#8217;,&#8217;t&#8217;,&#8217; 8Dy Forma&#8217;,&#8217;ort Handl&#8217;,&#8217; 600} 8D&#8217;,&#8217;RYl_.Handles &#8216;,&#8217;b&#8217;)) B -crePLACE&#8217;8Dy&#8217;,[cHar]124-crePLACE&#8217;RYl&#8217;,[cHar]36) | IEx<\/span><br \/>\n<span style=\"font-weight: 400;\">This looks suspicious and noisy. Here is another example of a subtle obfuscation for the same command:<\/span><br \/>\n<span style=\"font-weight: 400;\">&amp;(b\u0000\u001c{1}{2}{0}&#8221;-f &#8216;s&#8217;,&#8217;G&#8217;,&#8217;et-Proces&#8217;)| &amp;(&#8220;{1}{0}&#8221;-f&#8217;here&#8217;,&#8217;W&#8217;) {$_.Handles -gt 600} | &amp;(&#8220;{1}{0}&#8221; -f&#8217;ort&#8217;,&#8217;S&#8217;) Handles | .(&#8220;{1}{0}{2}&#8221;-f &#8216;-&#8216;,&#8217;Format&#8217;,&#8217;Table&#8217;)<\/span><br \/>\n<span style=\"font-weight: 400;\">This obfuscation makes it hard to detect the intent of PowerShell command\/script. Most of the malicious PowerShell scripts in the wild have these kinds of subtle variations that help them to evade AVs easily. Practically, it is nearly impossible for a security analyst to review every PowerShell script to determine whether it is obfuscated or not. Therefore, automating the obfuscation detection is required. One can use a rule-based approach for obfuscation detection; however, it may not detect a lot of obfuscation types, and a large number of rules needs to be manually written by a domain expert. Therefore, a machine learning\/deep learning-based solution is an ideal solution for this problem.<\/span><br \/>\n<span style=\"font-weight: 400;\">Typically, the first step of machine learning is data cleanup and preprocessing. For the obfuscation detection dataset, the data preprocessing is done to remove Unicode characters from a script. <\/span><br \/>\n<span style=\"font-weight: 400;\">Obfuscated scripts look different from normal scripts, some combination of characters used in obfuscated scripts are not used in normal scripts. So, we use character level representation for all PowerShell scripts instead of word-based representation. Another reason being, in case of PowerShell scripting, sophisticated obfuscation can sometimes completely blur the boundary between words\/tokens\/identifiers, rendering it useless for any word-based tokenization. Character-based tokenization is also used by security researchers to detect PowerShell obfuscated scripts. Lee Holmes from Microsoft had explored character frequency-based representation and cosine similarity to detect obfuscated scripts in his blog [12]. B There are multiple ways in which characters can be vectorized. One hot encoding of characters represents every character by a bit, and the bit is set to 0 or 1 depending upon whether that character is present in the script or not. The classifiers trained with a single character one hot encoding performs well. However, this can be improved by capturing the sequence of characters. For example: command like <\/span><i><span style=\"font-weight: 400;\">New-Object <\/span><\/i><span style=\"font-weight: 400;\">may be obfuscated as <\/span><i><span style=\"font-weight: 400;\">(&#8216;Ne&#8217;+&#8217;w-&#8216;+&#8217;Objec&#8217;+&#8217;t&#8217;)<\/span><\/i><span style=\"font-weight: 400;\">. The character plus (+) operator is common for any PowerShell script. However, plus (+) followed by a single (b\u0000\u0018) or double quote (b\u0000\u001c) may not be as common. Therefore, we use tf-idf character bigrams to represent as the features input to the classifiers. <\/span><br \/>\n<span style=\"font-weight: 400;\">Here are 20 bigrams with top tf-idf score from the training dataset:<\/span><br \/>\n<span style=\"text-decoration: underline;\"><span style=\"font-weight: 400;\">Clean script<\/span><\/span><br \/>\n<span style=\"font-weight: 400;\">[&#8216;er&#8217;, &#8216;te&#8217;, &#8216;in&#8217;, &#8216;at&#8217;, &#8216;re&#8217;, &#8216;pa&#8217;, &#8216;st&#8217;, &#8216;on&#8217;, &#8216;me&#8217;, &#8216;en&#8217;, &#8216;ti&#8217;, &#8216;le&#8217;, &#8216;th&#8217;, &#8216;am&#8217;, &#8216;nt&#8217;, &#8216;es&#8217;, &#8216;se&#8217;, &#8216;or&#8217;, &#8216;ro&#8217;, &#8216;co&#8217;]<\/span><br \/>\n<span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"text-decoration: underline;\"><span style=\"font-weight: 400;\">Obfuscated script<\/span><\/span><br \/>\n<span style=\"font-weight: 400;\">[&#8220;&#8216;+&#8221;, &#8220;+'&#8221;, &#8216;}{&#8216;, &#8220;,'&#8221;, &#8220;&#8216;,&#8221;, &#8216;er&#8217;, &#8216;te&#8217;, &#8216;in&#8217;, &#8216;re&#8217;, &#8216;me&#8217;, &#8216;st&#8217;, &#8216;et&#8217;, &#8216;se&#8217;, &#8216;ar&#8217;, &#8216;on&#8217;, &#8216;at&#8217;, &#8216;ti&#8217;, &#8216;am&#8217;, &#8216;es&#8217;, &#8216;{1&#8217;]<\/span><br \/>\n<span style=\"font-weight: 400;\">Each script is represented using the character bigrams. We process all these features using deep Feed Forward Neural Network (FFN) with N hidden layers using Keras and Tensorflow.<\/span><br \/>\n<img loading=\"lazy\" class=\"aligncenter wp-image-6468\" src=\"https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image2-1024x542.png\" alt=\"\" width=\"600\" height=\"317\" srcset=\"https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image2-1024x542.png 1024w, https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image2-300x159.png 300w, https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image2-768x406.png 768w, https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image2-1536x813.png 1536w, https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image2.png 1890w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/p>\n<p style=\"text-align: center;\"><span style=\"font-weight: 400;\">Figure 1: Obfuscation Detection data flow diagram using deep <\/span><span style=\"font-weight: 400;\">FFN<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The data flow diagram as shown in Figure 1 shows the training and prediction flow for obfuscation detection. We have varied the value of hidden layers in the deep FNN and found N=6 to be optimal. For activation, RELU is used for all the hidden layers. Each layer of Hidden layer is dense in nature of dimension 1000 and used a dropout rate of 0.5. For the last layer, sigmoid is used as an activation function. Figure 2 shows the deep <\/span><span style=\"font-weight: 400;\">FFN network representation for obfuscation detection<\/span><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p style=\"text-align: center;\"><span style=\"font-weight: 400;\"><img loading=\"lazy\" class=\"aligncenter wp-image-6467\" src=\"https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image3.png\" alt=\"\" width=\"600\" height=\"402\" srcset=\"https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image3.png 486w, https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image3-300x201.png 300w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/>Figure 2: FFN Network Representation for Obfuscation Detection<\/span><\/p>\n<p><span style=\"font-weight: 400;\">We see a validation accuracy of nearly 92% that indicates that the model has generalized well outside the training set. Next, we test our model on the test set. We see accuracy of 93% with 0.99 recall for obfuscated class. Figure 2 shows the classification accuracy and classification loss plots for training and validation data for each epoch.<\/span><\/p>\n<p style=\"text-align: center;\"><span style=\"font-weight: 400;\"><img loading=\"lazy\" class=\"alignnone wp-image-6466 size-full\" src=\"https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image4.png\" alt=\"\" width=\"640\" height=\"480\" srcset=\"https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image4.png 640w, https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image4-300x225.png 300w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/><img loading=\"lazy\" class=\"alignnone size-full wp-image-6469\" src=\"https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image1.png\" alt=\"\" width=\"640\" height=\"480\" srcset=\"https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image1.png 640w, https:\/\/acalvio.p2staging.us\/wp-content\/uploads\/2019\/04\/ps-obfus-image1-300x225.png 300w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/><\/span><\/p>\n<p style=\"text-align: center;\"><span style=\"font-weight: 400;\">Figure 2: Classification Accuracy and Loss plots for Training and Validation Phase<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Table 1 shows the results of deep FNN as compared to other ML models. Performance metrics precision and recall are used to measure the efficacy of the various models. <\/span><\/p>\n<p style=\"text-align: center;\"><span style=\"font-weight: 400;\">Table 1: Output of ML Models for Obfuscation Detection.<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><b>Classifier Used<\/b><\/td>\n<td><b>Precision<\/b><\/td>\n<td><b>Recall<\/b><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Random Forest<\/span><\/td>\n<td><span style=\"font-weight: 400;\">0.92<\/span><\/td>\n<td><span style=\"font-weight: 400;\">0.97<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Logistic Regression<\/span><\/td>\n<td><span style=\"font-weight: 400;\">0.91<\/span><\/td>\n<td><span style=\"font-weight: 400;\">0.87<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Deep Feed-forward Neural Network (FNN)<\/span><\/td>\n<td><span style=\"font-weight: 400;\">0.89<\/span><\/td>\n<td><span style=\"font-weight: 400;\">0.99<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400;\">Our objective is to detect most of the obfuscated scripts as the obfuscated script, i.e. we would like to minimize the false negative rate for the obfuscated class. The Recall seems to be the appropriate measure in this case. Table 1 shows that the deep FNN model achieves more recall as compared to other classifiers. The dataset used in our experiments is of medium scale, in the wild, the datasets are typically quite big, and deep FNN performs even better as compared to the other ML classifiers.<\/span><br \/>\n<b>Conclusion:<\/b><br \/>\n<span style=\"font-weight: 400;\">PowerShell obfuscation is a smart way to bypass existing antivirus and hide the attackb\u0000\u0019s intent; a technique which is used by many adversaries. In this blog, we demonstrated the power of deep learning combined with Acalviob\u0000\u0019s deception [13] technology to detect obfuscated PowerShell scripts in a high interaction decoy. <a href=\"https:\/\/www.acalvio.com\/shadowplex-cloud\/\">Acalviob\u0000\u0019s Shadowplex<\/a> [14], an autonomous deception platform provides an ability to engage with the adversary, understand his intent, tools and monitor all of his activities. In our next blog of this series, we will share some more use cases where AI and deception can be leveraged for information security.<\/span><br \/>\n<span style=\"font-weight: 400;\">References:<\/span><br \/>\n<span style=\"font-weight: 400;\">[1] b\u0000\u001c<\/span><a href=\"https:\/\/mitpress.mit.edu\/books\/deep-learning\"><span style=\"font-weight: 400;\">Deep Learning<\/span><\/a><span style=\"font-weight: 400;\">,b\u0000\u001d Ian Goodfellow, Yoshua Bengio, Aaron Courville; pp 196, MIT Press, 2016.<\/span><br \/>\n<span style=\"font-weight: 400;\">[2] b\u0000\u001c<\/span><a href=\"https:\/\/www.acalvio.com\/using-deep-learning-for-information-security-part-1\/\"><span style=\"font-weight: 400;\">Using Deep Learning for Information Security &#8211; Part 1<\/span><\/a><span style=\"font-weight: 400;\">,b\u0000\u001d Acalvio Blog, 2018.<\/span><br \/>\n<span style=\"font-weight: 400;\">[3] B &#8220;Malware detection using machine learning,&#8221; B DragoE\u001f GavriluE#, Mihai CimpoeE\u001fu, Dan Anton, Liviu Ciortuz; International Multiconference on Computer Science and Information Technology, Mragowo, 2009<\/span><br \/>\n<span style=\"font-weight: 400;\">[4] b\u0000\u001c<\/span><a href=\"https:\/\/www.symantec.com\/content\/dam\/symantec\/docs\/security-center\/white-papers\/increased-use-of-powershell-in-attacks-16-en.pdf\"><span style=\"font-weight: 400;\">The increased use of Powershell in attacks<\/span><\/a><span style=\"font-weight: 400;\">,b\u0000\u001d Symantec, 2016<\/span><br \/>\n<span style=\"font-weight: 400;\">[5] b\u0000\u001c<\/span><a href=\"https:\/\/www.symantec.com\/connect\/blogs\/odinaff-new-trojan-used-high-level-financial-attacks\"><span style=\"font-weight: 400;\">Odinaff: New Trojan used in financial attacks<\/span><\/a><span style=\"font-weight: 400;\">,b\u0000\u001d Symantec Security Response, Oct 2016<\/span><br \/>\n<span style=\"font-weight: 400;\">[6] b\u0000\u001c<\/span><a href=\"https:\/\/github.com\/EmpireProject\/Empire\"><span style=\"font-weight: 400;\">Empire<\/span><\/a><span style=\"font-weight: 400;\">,b\u0000\u001d Will Schroeder, Justin Warner, Matt Nelson, Steve Borosh, Alex Rymdeko-harvey, Chris Ross; 2017<\/span><br \/>\n<span style=\"font-weight: 400;\">[7] b\u0000\u001c<\/span><a href=\"https:\/\/github.com\/PowerShellMafia\/PowerSploit\"><span style=\"font-weight: 400;\">PowerSploit<\/span><\/a><span style=\"font-weight: 400;\">,b\u0000\u001d Matthew Graeber; 2012 B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B <\/span><br \/>\n<span style=\"font-weight: 400;\">[8] b\u0000\u001c<\/span><a href=\"https:\/\/www.fireeye.com\/content\/dam\/fireeye-www\/blog\/pdfs\/revoke-obfuscation-report.pdf\"><span style=\"font-weight: 400;\">Revoke-Obfuscation<\/span><\/a><span style=\"font-weight: 400;\">,b\u0000\u001d Daniel Bohannan, Lee Holmes; 2017<\/span><br \/>\n<span style=\"font-weight: 400;\">[9] b\u0000\u001c<\/span><a href=\"https:\/\/aka.ms\/PowerShellCorpus\"><span style=\"font-weight: 400;\">PowerShell Corpus<\/span><\/a><span style=\"font-weight: 400;\">b\u0000\u001d <\/span><br \/>\n<span style=\"font-weight: 400;\">[10] b\u0000\u001c<\/span><a href=\"https:\/\/github.com\/PoshCode\"><span style=\"font-weight: 400;\">PoshCode<\/span><\/a><span style=\"font-weight: 400;\"> &#8211; PowerShell Projects for Power Users.b\u0000\u001d <\/span><br \/>\n<span style=\"font-weight: 400;\">[11] b\u0000\u001c<\/span><a href=\"https:\/\/github.com\/danielbohannon\/Invoke-Obfuscation\"><span style=\"font-weight: 400;\">Invoke-Obfuscation<\/span><\/a><span style=\"font-weight: 400;\">,b\u0000\u001d Daniel Bohannan; 2017<\/span><br \/>\n<span style=\"font-weight: 400;\">[12] b\u0000\u001d<\/span><a href=\"http:\/\/www.leeholmes.com\/blog\/2016\/10\/22\/more-detecting-obfuscated-powershell\/\"><span style=\"font-weight: 400;\">More Detecting Obfuscated PowerShell<\/span><\/a><span style=\"font-weight: 400;\">,b\u0000\u001d Lee Holmes; 2016<\/span><br \/>\n<span style=\"font-weight: 400;\">[13] <\/span><a href=\"https:\/\/go.acalvio.com\/definitive-guide-cyber-deception\"><span style=\"font-weight: 400;\">The Definitive Guide to Deception<\/span><\/a><span style=\"font-weight: 400;\">, Acalvio Technologies.<\/span><br \/>\n<span style=\"font-weight: 400;\">[14] <\/span><a href=\"https:\/\/www.acalvio.com\/product\/\"><span style=\"font-weight: 400;\">ShadowPlex<\/span><\/a><span style=\"font-weight: 400;\">, Acalvio Technologies.<\/span><\/p>\n<div class=\"sharethis-inline-share-buttons\" style=\"margin-top:32px;\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Authors: Santosh Kosgi, Mohammad Waseem, Arunabha Choudhury, and Satnam Singh Deep Learning-based methods have been successfully applied to various computer vision and NLP based problems recently [1]. AI researchers have achieved statistically significant improvements in pushing the benchmarks for state of the art algorithms in object detection, language translation, and sentiment analysis. However, the application [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":6467,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[3],"tags":[87,117,126,129],"_links":{"self":[{"href":"https:\/\/acalvio.p2staging.us\/index.php\/wp-json\/wp\/v2\/posts\/6463"}],"collection":[{"href":"https:\/\/acalvio.p2staging.us\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/acalvio.p2staging.us\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/acalvio.p2staging.us\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/acalvio.p2staging.us\/index.php\/wp-json\/wp\/v2\/comments?post=6463"}],"version-history":[{"count":0,"href":"https:\/\/acalvio.p2staging.us\/index.php\/wp-json\/wp\/v2\/posts\/6463\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/acalvio.p2staging.us\/index.php\/wp-json\/wp\/v2\/media\/6467"}],"wp:attachment":[{"href":"https:\/\/acalvio.p2staging.us\/index.php\/wp-json\/wp\/v2\/media?parent=6463"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/acalvio.p2staging.us\/index.php\/wp-json\/wp\/v2\/categories?post=6463"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/acalvio.p2staging.us\/index.php\/wp-json\/wp\/v2\/tags?post=6463"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}