{"id":184,"date":"2014-08-26T23:53:54","date_gmt":"2014-08-26T23:53:54","guid":{"rendered":"http:\/\/outworx.com\/blog\/?p=184"},"modified":"2017-01-19T10:32:41","modified_gmt":"2017-01-19T10:32:41","slug":"summary-of-the-twelve-pci-dss-requirements","status":"publish","type":"post","link":"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/","title":{"rendered":"Summary of the Twelve PCI DSS Requirements"},"content":{"rendered":"<p><span style=\"color: #808080;\">Let&#8217;s suppose that you need to handle credit card data in your computing environment.\u00a0 Let&#8217;s suppose further than you can&#8217;t use something like Point-To-Point encryption to vastly reduce your PCI scope.\u00a0 The<\/span> <a title=\"PCI Standards and Documents\" href=\"https:\/\/www.pcisecuritystandards.org\/security_standards\/documents.php\" target=\"_blank\">PCI DSS<\/a> <span style=\"color: #808080;\">standard defines twelve high level requirements that you need to meet.\u00a0 We will summarize these below.\u00a0 But be careful with the overview.\u00a0 When it comes time to actually implement these requirements, you&#8217;ll find that each one actually has many subrequirements that you&#8217;ll need to meet.\u00a0 You&#8217;ll have to read the standard to find these.<\/span><\/p>\n<p><span style=\"color: #808080;\">In the blog below, the Requirement headings are taken directly from the PCI DSS v3.0 spec.\u00a0 The descriptions below the headings are mine.\u00a0 Please note that the descriptions just include highlights, and are not comprehensive.<\/span><\/p>\n<h3><span style=\"color: #808080;\"><strong>Requirement 1: Install and maintain a firewall configuration to protect cardholder data.<\/strong><\/span><\/h3>\n<p><span style=\"color: #808080;\">This section regulates your firewalls, routers, and networking configuration in general.\u00a0 Firewalls must be stateful, and protect card holder data.\u00a0 Firewall and router configurations can&#8217;t be changed without a formal approval process.\u00a0 You&#8217;ll also need network diagrams showing the flow of cardholder data through your systems and networks.<\/span><\/p>\n<p><span style=\"color: #808080;\">You&#8217;ll need to formally define who is responsible for network components, and what their role is.<\/span><\/p>\n<h3><span style=\"color: #808080;\"><strong>Requirement 2: Do not use vendor-supplied defaults for system passwords and other security parameters<\/strong><\/span><\/h3>\n<p><span style=\"color: #808080;\">Don&#8217;t use any default passwords or vendor supplied passwords anywhere in your cardholder environment.\u00a0\u00a0 Make sure that your systems are hardened.\u00a0 Disable unneeded services on each machine.\u00a0 Each system should have only 1 primary purpose.\u00a0 Get rid of insecure services, like ftp, or use a secure alternative like s-ftp.\u00a0 Remove unneeded software from the system.\u00a0 Use strong encryption when logging in as an administrator.\u00a0 Create an inventory of each system&#8217;s components that are in scope for PCI.<\/span><\/p>\n<h3><span style=\"color: #808080;\">Requirement 3: Protect stored cardholder data<\/span><\/h3>\n<p><span style=\"color: #808080;\">Never store full track data from the card.\u00a0 Never store the card verification number or the card&#8217;s PIN.\u00a0 The credit card number is called the Personal Account Number (PAN).\u00a0 PAN data, if stored, must be protected by strong encryption or something similar.\u00a0 Define a retention period for the data, and make sure that it is securely destroyed after the retention period ends.\u00a0 For cryptographic keys, have secure key storage and secure key distribution.\u00a0 Limit the number of people who have access to the keys.\u00a0 Have policies and procedures to protect the keys.\u00a0 Key custodians must &#8220;formally acknowledge&#8221; that they understand their responsibility.\u00a0 Mask the PAN data when it is displayed, showing no more than the first 6 digits and the last 4.<\/span><\/p>\n<h3><span style=\"color: #808080;\"><strong>Requirement 4: Encrypt transmission of cardholder data across open, public networks.<\/strong><\/span><\/h3>\n<p><span style=\"color: #808080;\">Use strong cryptography to protect data going across a public network, e.g. the Internet, a wireless network, or a cell phone network.\u00a0 Your wireless network can&#8217;t use WEP, but must use a secure protocol.\u00a0 Don&#8217;t send PAN data in email or instant messaging technologies unless it is protected by strong encryption.<\/span><\/p>\n<h3><span style=\"color: #808080;\"><strong>Requirement 5: Protect all systems against malware and regularly update anit-virus software or programs<\/strong><\/span><\/h3>\n<p><span style=\"color: #808080;\">This requirement pretty much boils down to running anti-virus software on all of your systems, and keeping it running well with things like regular updates.<\/span><\/p>\n<p><span style=\"color: #808080;\">(Please note that anti-virus software alone is not enough to make a system secure.\u00a0 Custom malware and other attacks can get through.\u00a0 But it is a good starting place, and does filter out many low level threats.)<\/span><\/p>\n<p><span style=\"color: #808080;\">(Note that whitelisting products, like the ones from <\/span><a title=\"Bit9\" href=\"https:\/\/www.bit9.com\/\" target=\"_blank\">Bit9<\/a><span style=\"color: #808080;\"> can be particularly effective at stopping malware.\u00a0 Anti-virus software <em>allow<\/em> unknown programs to run unless they are on a blacklist.\u00a0 In contrast,\u00a0 products like Bit9 <em>prevent<\/em> unknown programs from running unless they are known to be safe, i.e. on the whitelist.\u00a0 When the Stuxnet virus came out, it was undetected by all the anti-virus programs for over a year.\u00a0 However, Bit9 blocked it since it was not on the whitelist.)<\/span><\/p>\n<h3><span style=\"color: #808080;\"><strong>Requirement 6: Develop and maintain secure systems and applications<\/strong><\/span><\/h3>\n<p><span style=\"color: #808080;\">If you don&#8217;t have security-oriented coding practices and IT processes, then this requirement is going to dramatically change the way you work.\u00a0 You&#8217;ll need to train your developers in secure coding practices.\u00a0\u00a0 Your programmers will also need to do code reviews for security before releasing the code.\u00a0 You&#8217;ll need to become familiar with coding security pitfalls and avoid them.\u00a0 Lists like the <\/span><a title=\"OWASP Top Ten\" href=\"https:\/\/www.owasp.org\/index.php\/Category:OWASP_Top_Ten_Project\" target=\"_blank\">OWASP Top Ten<\/a><span style=\"color: #808080;\"> or the <\/span><a title=\"SWE\/SANS Top 25 Most Dangerous Software Errors\" href=\"http:\/\/www.sans.org\/top25-software-errors\/\" target=\"_blank\">CWE\/SANS Top 25 Most Dangerous Software Errors<\/a><span style=\"color: #808080;\">, can be very helpful as starting places.\u00a0 However, they don&#8217;t cover everything.\u00a0 You&#8217;ll almost certainly certainly want to have your developers take training classes from SANS and other organizations that specialize in teaching secure coding practices.<\/span><\/p>\n<p><span style=\"color: #808080;\">About 90% of the code in today&#8217;s applications is assembled from other sources.\u00a0 You&#8217;ll need to monitor those sources, and when security patches come out, you&#8217;ll need to rate is severity, and apply it.\u00a0 IT will need to do the same for the system software on the servers.\u00a0 You&#8217;ll need a formal change control process.<\/span><\/p>\n<p><span style=\"color: #808080;\">Never use live PAN data for testing.\u00a0 Remove test accounts before production.\u00a0 Have separate development and production environments.<\/span><\/p>\n<h3><span style=\"color: #808080;\"><strong>Requirement 7: Restrict access to cardholder data by business need to know<\/strong><\/span><\/h3>\n<p><span style=\"color: #808080;\">This requirement basically says to strongly limit access to card holder data.\u00a0 Give users the least amount of privilege to get their jobs done.\u00a0 By default, deny access unnless someone has a business need to access the data.\u00a0 Document the roles of the people who access the data, and define access for each role.<\/span><\/p>\n<h3><span style=\"color: #808080;\"><strong>Requirement 8: Identify and authenticate access to system components<\/strong><\/span><\/h3>\n<p><span style=\"color: #808080;\">This requirement has mostly to do with password and credential management.\u00a0 Users need to have individual accounts; shared accounts are forbidden. \u00a0 Passwords must be strong, and passwords must be changed every 90 days.\u00a0 Strong cryptography must protect stored passwords.\u00a0 Two factor authentication is required for remote access.\u00a0 Third party accounts for support must be disabled when not in use.\u00a0 Access to a database with card holder data should be restricted programs and database admins.<\/span><\/p>\n<h3><span style=\"color: #808080;\"><strong>Requirement 9: Restrict physical access to cardholder data<\/strong><\/span><\/h3>\n<p><span style=\"color: #808080;\">PCI requires you to physically secure your facility.\u00a0 You have to restrict physical access to your computers and network equipment.\u00a0 You&#8217;ll need to have badges (or something similar) so you can quickly identify who is a visitor and who is an authorized employee.\u00a0 When someone leaves, you&#8217;ll need to revoke their access immediately.<\/span><\/p>\n<p><span style=\"color: #808080;\">You&#8217;ll need special protocols for visitors.\u00a0 They will have to be escorted at all time.\u00a0 They will need to wear a badge (or something similar).\u00a0 A visitor log will tell when they entered and left.<\/span><\/p>\n<p><span style=\"color: #808080;\">If backups and other media are stored offsite, then a secure location must be used.\u00a0 A secure courier must be used to transport the media.\u00a0 You&#8217;ll need an inventory log of all media.\u00a0 When media is no longer needed, securely destroy it.<\/span><\/p>\n<p><span style=\"color: #808080;\">If you have a POS device that reads the cards, you&#8217;ll need to protect it from tampering or from being switched out.\u00a0 You&#8217;ll also need to maintain a list of devices.\u00a0 Inspect them periodically to look for skimmers or tampering.\u00a0 Train your people to also look for problems.<\/span><\/p>\n<h3><span style=\"color: #808080;\"><strong>Requirement 10: Track and monitor all access to network resources and cardholder data<\/strong><\/span><\/h3>\n<p><span style=\"color: #808080;\">PCI requires that you log access to card holder data and many security events, e.g. logins, creating new accounts, deleting accounts, elevating privilege, any action by privileged accounts, and so on.\u00a0 All logs need to be sent to a central logger, and retained for one year.\u00a0 Time must be synchronized on all systems to an industry standard source so the dates in the log files are reliable.\u00a0 You&#8217;ll need to review these logs.<\/span><\/p>\n<h3><span style=\"color: #808080;\"><strong>Requirement 11: Regularly test security systems and processes<\/strong><\/span><\/h3>\n<p><span style=\"color: #808080;\">You need to scan for unauthorized wireless access points, and have a plan to deal with them.\u00a0 You&#8217;ll need to maintain an inventory of legitimate access points.<\/span><\/p>\n<p><span style=\"color: #808080;\">Run external and internal vulnerability scans at least once a quarter.\u00a0 The external scan requires a PCI Approved Scanning Vendor (ASV).\u00a0 Fix high risk problems, and rescan until there aren&#8217;t any more.<\/span><\/p>\n<p><span style=\"color: #808080;\">Penetration, external and internal, must also be done at least annually, and problems remediated.<\/span><\/p>\n<p><span style=\"color: #808080;\">If you make a significant change to your network or environment, do new scans and penetration testing.<\/span><\/p>\n<p><span style=\"color: #808080;\">Have an Intrusion Detection and\/or Intrusion Prevention system.<\/span><\/p>\n<p><span style=\"color: #808080;\">Critical files on servers should have file integrity monitoring, so changes can be detected and personnel alerted.<\/span><\/p>\n<h3><span style=\"color: #808080;\"><strong>Requirement 12: Maintain a policy that addresses information security for all personnel.<\/strong><\/span><\/h3>\n<p><span style=\"color: #808080;\">Write up your security policy, and review it annually\u00a0 This has many details that are given in the PCI spec.\u00a0 Give it to everyone involved in the cardholder environment.<\/span><\/p>\n<p><span style=\"color: #808080;\">Have a risk assessment plan, and perform a formal risk assessment at least once per year.<\/span><\/p>\n<p><span style=\"color: #808080;\">Have an Incident Response plan to respond to breaches.\u00a0 Test it at least annually.\u00a0 You&#8217;ll also need designated personnel to be available to respond 24&#215;7.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Let&#8217;s suppose that you need to handle credit card data in your computing environment.\u00a0 Let&#8217;s suppose further than you can&#8217;t use something like Point-To-Point encryption to vastly reduce your PCI scope.\u00a0 The PCI DSS standard defines twelve high level requirements that you need to meet.\u00a0 We will summarize these below.\u00a0 But be careful with the &hellip; <a href=\"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Summary of the Twelve PCI DSS Requirements&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"xn-wppe-expiration":[],"xn-wppe-expiration-action":[],"xn-wppe-expiration-prefix":[],"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0},"categories":[14],"tags":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v17.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Summary of the Twelve PCI DSS Requirements | OutworX<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Summary of the Twelve PCI DSS Requirements | OutworX\" \/>\n<meta property=\"og:description\" content=\"Let&#8217;s suppose that you need to handle credit card data in your computing environment.\u00a0 Let&#8217;s suppose further than you can&#8217;t use something like Point-To-Point encryption to vastly reduce your PCI scope.\u00a0 The PCI DSS standard defines twelve high level requirements that you need to meet.\u00a0 We will summarize these below.\u00a0 But be careful with the &hellip; Continue reading &quot;Summary of the Twelve PCI DSS Requirements&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/\" \/>\n<meta property=\"og:site_name\" content=\"OutworX\" \/>\n<meta property=\"article:published_time\" content=\"2014-08-26T23:53:54+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2017-01-19T10:32:41+00:00\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.outworx.com\/blog\/#website\",\"url\":\"https:\/\/www.outworx.com\/blog\/\",\"name\":\"OutworX\",\"description\":\"Blogs, News and Updates of IT Industry | OutworX\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.outworx.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/#webpage\",\"url\":\"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/\",\"name\":\"Summary of the Twelve PCI DSS Requirements | OutworX\",\"isPartOf\":{\"@id\":\"https:\/\/www.outworx.com\/blog\/#website\"},\"datePublished\":\"2014-08-26T23:53:54+00:00\",\"dateModified\":\"2017-01-19T10:32:41+00:00\",\"author\":{\"@id\":\"https:\/\/www.outworx.com\/blog\/#\/schema\/person\/4a222258173fdc00e104b30c5fc10632\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.outworx.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Summary of the Twelve PCI DSS Requirements\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.outworx.com\/blog\/#\/schema\/person\/4a222258173fdc00e104b30c5fc10632\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/www.outworx.com\/blog\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/91f39a5ea2f90d0d957945f581465a21?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/91f39a5ea2f90d0d957945f581465a21?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"description\":\"Outworx@Admin\",\"url\":\"https:\/\/www.outworx.com\/blog\/author\/admin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Summary of the Twelve PCI DSS Requirements | OutworX","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/","og_locale":"en_US","og_type":"article","og_title":"Summary of the Twelve PCI DSS Requirements | OutworX","og_description":"Let&#8217;s suppose that you need to handle credit card data in your computing environment.\u00a0 Let&#8217;s suppose further than you can&#8217;t use something like Point-To-Point encryption to vastly reduce your PCI scope.\u00a0 The PCI DSS standard defines twelve high level requirements that you need to meet.\u00a0 We will summarize these below.\u00a0 But be careful with the &hellip; Continue reading \"Summary of the Twelve PCI DSS Requirements\"","og_url":"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/","og_site_name":"OutworX","article_published_time":"2014-08-26T23:53:54+00:00","article_modified_time":"2017-01-19T10:32:41+00:00","twitter_misc":{"Written by":"admin","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/www.outworx.com\/blog\/#website","url":"https:\/\/www.outworx.com\/blog\/","name":"OutworX","description":"Blogs, News and Updates of IT Industry | OutworX","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.outworx.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/#webpage","url":"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/","name":"Summary of the Twelve PCI DSS Requirements | OutworX","isPartOf":{"@id":"https:\/\/www.outworx.com\/blog\/#website"},"datePublished":"2014-08-26T23:53:54+00:00","dateModified":"2017-01-19T10:32:41+00:00","author":{"@id":"https:\/\/www.outworx.com\/blog\/#\/schema\/person\/4a222258173fdc00e104b30c5fc10632"},"breadcrumb":{"@id":"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.outworx.com\/blog\/summary-of-the-twelve-pci-dss-requirements\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.outworx.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Summary of the Twelve PCI DSS Requirements"}]},{"@type":"Person","@id":"https:\/\/www.outworx.com\/blog\/#\/schema\/person\/4a222258173fdc00e104b30c5fc10632","name":"admin","image":{"@type":"ImageObject","@id":"https:\/\/www.outworx.com\/blog\/#personlogo","inLanguage":"en-US","url":"https:\/\/secure.gravatar.com\/avatar\/91f39a5ea2f90d0d957945f581465a21?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/91f39a5ea2f90d0d957945f581465a21?s=96&d=mm&r=g","caption":"admin"},"description":"Outworx@Admin","url":"https:\/\/www.outworx.com\/blog\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/posts\/184"}],"collection":[{"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/comments?post=184"}],"version-history":[{"count":11,"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/posts\/184\/revisions"}],"predecessor-version":[{"id":871,"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/posts\/184\/revisions\/871"}],"wp:attachment":[{"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/media?parent=184"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/categories?post=184"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/tags?post=184"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}