<p>Foreword xvi</p> <p>Introduction xvii</p> <p> </p> <p><strong>Part I. Security Fundamentals</strong></p> <p><strong> </strong></p> <p><strong>Chapter 1. Basics of Cybersecurity</strong> 1</p> <p>Cybersecurity 1</p> <p>CIA-DAD 2</p> <p>I-A-A-A 4</p> <p>Defense in Depth 6</p> <p>Hardware and Software Security 7</p> <p>Firewalls, Access Controls, and Access Control Lists 8</p> <p>Physical Security 9</p> <p>Practical Example of a Server Security in an Organization 10</p> <p>Summary 16</p> <p>Chapter 1 Questions 17</p> <p>Answers to Chapter 1 Questions 18</p> <p> </p> <p><strong>Chapter 2. Security Details</strong> 19</p> <p>The Four Attributes: Encrypt, Compress, Index, and Archive 19</p> <p>Encryption, Algorithms 22</p> <p>Public Key Infrastructure 22</p> <p>Email Security Example 23</p> <p>Nonrepudiation, Authentication Methods (K-H-A) 25</p> <p>Current and New Algorithms 26</p> <p>Summary 26</p> <p>Chapter 2 Questions 28</p> <p>Answers to Chapter 2 Questions 29</p> <p> </p> <p><strong>Chapter 3. Goals of Security</strong> 31</p> <p>Goals of Security—SMART/OKR 31</p> <p>Who’s Who in Security: RACI 33</p> <p>Creating the RACI Matrix 35</p> <p>Planning—Strategic, Tactical, and Operational 36</p> <p>Events and Incidents 37</p> <p>Risks, Breaches, Fixes 38</p> <p>Security Logs—The More the Merrier 39</p> <p>Re/Engineering a Project 41</p> <p>Keeping Security Up to Date 42</p> <p>Summary 43</p> <p>Chapter 3 Questions 44</p> <p>Answers to Chapter 3 Questions 45</p> <p> </p> <p><strong>Part II. Database Security—The Back End</strong></p> <p> </p> <p><strong>Chapter 4. Database Security Introduction</strong> 47</p> <p>ACID, BASE of DB, and CIA Compliance 47</p> <p>ACID, BASE, and CIA 47</p> <p>Data in Transit, Data at Rest 49</p> <p>DDL and DML 52</p> <p>Designing a Secure Database 54</p> <p>Structural Security 57</p> <p>Functional Security 60</p> <p>Data Security 61</p> <p>Procedural Security 63</p> <p>Summary 64</p> <p>Chapter 4 Questions 65</p> <p>Answers to Chapter 4 Questions 66</p> <p> </p> <p><strong>Chapter 5. Access Control of Data</strong> 67</p> <p>Access Control—Roles for Individuals and Applications 67</p> <p>MAC, DAC, RBAC, RuBAC 69</p> <p>Passwords, Logins, and Maintenance 74</p> <p>Hashing and Checksum Methods 76</p> <p>Locking, Unlocking, Resetting 80</p> <p>Monitoring User Accounts, System Account 82</p> <p>Data Protection—Views and Materialized Views 86</p> <p>PII Security—Data, Metadata, and Surrogates 90</p> <p>Summary 94</p> <p>Chapter 5 Questions 96</p> <p>Answers to Chapter 5 Questions 97</p> <p> </p> <p><strong>Chapter 6. Data Refresh, Backup, and Restore</strong> 99</p> <p>Data Refresh—Manual, ETL, and Script 99</p> <p>ETL Jobs 102</p> <p>Security in Invoking ETL Job 104</p> <p>Data Pump: Exporting and Importing 106</p> <p>Backup and Restore 109</p> <p>Keeping Track—Daily, Weekly, Monthly 117</p> <p>Summary 119</p> <p>Chapter 6 Questions 120</p> <p>Answers to Chapter 6 Questions 121</p> <p> </p> <p><strong>Chapter 7. Host Security</strong> 123</p> <p>Server Connections and Separation 123</p> <p>IP Selection, Proxy, Invited Nodes 126</p> <p>Access Control Lists 128</p> <p>Connecting to a System/DB: Passwords, Smart Cards, Certificates 131</p> <p>Cron Jobs or Task Scheduler 137</p> <p>Regular Monitoring and Troubleshooting 141</p> <p>Summary 144</p> <p>Chapter 7 Questions 145</p> <p>Answers to Chapter 7 Questions 146</p> <p> </p> <p><strong>Chapter 8. Proactive Monitoring</strong> 149</p> <p>Logs, Logs, and More Logs 149</p> <p>Data Manipulation Monitoring 150</p> <p>Data Structure Monitoring 156</p> <p>Third-Party or Internal Audits 159</p> <p>LOG File Generation 165</p> <p>Summary 172</p> <p>Chapter 8 Questions 173</p> <p>LAB Work 173</p> <p>Answers to Chapter 8 Questions 174</p> <p> </p> <p><strong>Chapter 9. Risks, Monitoring, and Encryption</strong> 175</p> <p>Security Terms 175</p> <p>Risk, Mitigation, Transfer, Avoidance, and Ignoring 177</p> <p>Organized Database Monitoring 181</p> <p>Encrypting the DB: Algorithm Choices 183</p> <p>Automated Alerts 185</p> <p>Summary 186</p> <p>Chapter 9 Questions 187</p> <p>Answers to Chapter 9 Questions 188</p> <p> </p> <p><strong>Part III. Application Security—The Front End</strong></p> <p> </p> <p><strong>Chapter 10. Application Security Fundamentals</strong> 189</p> <p>Coding Standards 190</p> <p>The Software Development Process 195</p> <p>Models and Selection 199</p> <p>Cohesion and Coupling 201</p> <p>Development, Test, and Production 202</p> <p>Client and Server 204</p> <p>Side Effects of a Bad Security in Software 213</p> <p>Fixing the SQL Injection Attacks 213</p> <p>Evaluate User Input 214</p> <p>Do Back-End Database Checks 215</p> <p>Change Management—Speaking the Same Language 215</p> <p>Secure Logging In to Applications, Access to Users 217</p> <p>Summary 221</p> <p>Chapter 10 Questions 223</p> <p>Answer to Chapter 10 Questions 224</p> <p> </p> <p><strong>Chapter 11. The Unseen Back End</strong> 227</p> <p>Back-End DB Connections in Java/Tomcat 238</p> <p>Connection Strings and Passwords in Code 241</p> <p>Stored Procedures and Functions 242</p> <p>File Encryption, Types, and Association 247</p> <p>Implementing Public Key Infrastructure and Smart Card 250</p> <p>Examples of Key Pairs on Java and Linux 251</p> <p>Symmetric Encryption 253</p> <p>Asymmetric Encryption 254</p> <p>Vulnerabilities, Threats, and Web Security 255</p> <p>Attack Types and Mitigations 256</p> <p>Summary 260</p> <p>Chapter 11 Questions 261</p> <p>Answers to Chapter 11 Questions 262</p> <p> </p> <p><strong>Chapter 12. Securing Software—In-House and Vendor</strong> 263</p> <p>Internal Development Versus Vendors 263</p> <p>Vendor or COTS Software 264</p> <p>Action Plan 265</p> <p>In-House Software Development 266</p> <p>Initial Considerations for In-House Software 267</p> <p>Code Security Check 269</p> <p>Fixing the Final Product—SAST Tools 271</p> <p>Fine-tuning the Product—Testing and Release 277</p> <p>Patches and Updates 278</p> <p>Product Retirement/Decommissioning 280</p> <p>Summary 282</p> <p>Chapter 12 Questions 283</p> <p>Answers to Chapter 12 Questions 284</p> <p> </p> <p><strong>Part IV. Security Administration</strong></p> <p> </p> <p><strong>Chapter 13. Security Administration</strong> 287</p> <p>Least Privilege, Need to Know, and Separation of Duties 287</p> <p>Who Is Who and Why 290</p> <p>Scope or User Privilege Creep 292</p> <p>Change Management 294</p> <p>Documenting the Process 296</p> <p>Legal Liabilities 308</p> <p>Software Analysis 312</p> <p>Network Analysis 312</p> <p>Hardware or a Device Analysis 313</p> <p>Be Proactive—Benefits and Measures 314</p> <p>Summary 318</p> <p>Chapter 13 Questions 319</p> <p>Answers to Chapter 13 Questions 320</p> <p> </p> <p><strong>Chapter 14. Follow a Proven Path for Security</strong> 323</p> <p>Advantages of Security Administration 323</p> <p>Penetration Testing 325</p> <p>Penetration Test Reports 334</p> <p>Audits—Internal and External and STIG Checking 337</p> <p>OPSEC—The Operational Security 344</p> <p>Digital Forensics—Software Tools 346</p> <p>Lessons Learned/Continuous Improvement 349</p> <p>Summary 350</p> <p>Chapter 14 Questions 352</p> <p>Answers to Chapter 14 Questions 353</p> <p> </p> <p><strong>Chapter 15. Mobile Devices and Application Security</strong> 355</p> <p>Authentication 356</p> <p>Cryptography 359</p> <p>Code Quality and Injection Attacks 360</p> <p>User Privacy on the Device 360</p> <p>Descriptive Claims 361</p> <p>Secure Software Development Claims 361</p> <p>Sandboxing 363</p> <p>Mobile Applications Security Testing 364</p> <p>NIST’s Directions for Mobile Device Security 366</p> <p>Summary 370</p> <p>Chapter 15 Questions 372</p> <p>Answers to Chapter 15 Questions 373</p> <p> </p> <p><strong>Chapter 16. Corporate Security in Practice</strong> 375</p> <p>Case # 1: A Person Is Joining an Organization as a New Employee 378</p> <p>Case # 2: An Employee Is Fired or Is Voluntarily Leaving the Organization 382</p> <p>Case # 3: An Existing Employee Wants to Renew Their Credentials 383</p> <p>Case # 4: An Existing Employee’s Privileges Are Increased/Decreased 383</p> <p>Case # 5: A Visitor/Vendor to the Organizational Facility 384</p> <p>Physical Security of DB and Applications 385</p> <p>Business Continuity and Disaster Recovery 388</p> <p>Attacks and Loss—Recognizing and Remediating 390</p> <p>Recovery and Salvage 393</p> <p>Getting Back to Work 394</p> <p>Lessons Learned from a Ransomware Attack—Example from a ISC2 Webinar 399</p> <p>Summary 403</p> <p>Chapter 16 Questions 404</p> <p>Answers to Chapter 16 Questions 405</p> <p> </p> <p>References 407</p> <p> </p> <p>Index 411</p>