<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Pam Van Londen &#187; Security</title>
	<atom:link href="http://pamvanlonden.com/category/knowledge/security/feed/" rel="self" type="application/rss+xml" />
	<link>http://pamvanlonden.com</link>
	<description>Corvallis Artist, Oregon Artist. Creating Every Day...paintings, web sites, and courses Oregon daily painter, murals and portraits. Corvallis Web Designer / Web Developer. Original abstract landscape oil paintings</description>
	<lastBuildDate>Sat, 04 Feb 2012 02:56:22 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Web Security Checklist</title>
		<link>http://pamvanlonden.com/web-security-checklist/</link>
		<comments>http://pamvanlonden.com/web-security-checklist/#comments</comments>
		<pubDate>Wed, 28 Jan 2009 18:24:43 +0000</pubDate>
		<dc:creator>Pam Van Londen</dc:creator>
				<category><![CDATA[Policies]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[User Data]]></category>

		<guid isPermaLink="false">http://pamvanlonden.com/?p=1629</guid>
		<description><![CDATA[<a href="http://pamvanlonden.com/web-security-checklist/"><img align="left" hspace="5" width="150" height="150" src="http://pamvanlonden.com/wp-content/plugins/thumbnail-for-excerpts/tfe_no_thumb.png" class="alignleft wp-post-image tfe" alt="" title="" /></a>Readings Web Applications Security Tutorial Jerry Berkman, 2003. A Guide to Building Secure Web Applications and Web Services Open Web Application Security Project. 2005 PDF. Open Web Application Security Project OWASP.org. Top 10 Vulnerabilities in Web Applications. November 2006. Secrets and Lies: Digital Security in a Networked World Bruce Schneier, John Wiley &#38; Sons, 2000. [...]]]></description>
			<content:encoded><![CDATA[<div class="floatingcontainer">
<h4>Readings</h4>
<dl>
<dt><a href="http://oldsocs.berkeley.edu:7309/web_sec/page1.html" target="_blank">Web Applications Security Tutorial</a></dt>
<dd>Jerry Berkman, 2003.</dd>
<dt><a href="http://www.owasp.org" target="_blank">A Guide to Building Secure Web Applications and Web Services</a></dt>
<dd>Open Web Application Security Project. 2005 PDF.<br />
<a href="http://www.owasp.org/documentation/topten.html" target="_blank">Open Web Application Security Project</a></dd>
<dd><a href="http://www.owasp.org/documentation/topten.html" target="_blank"></a>OWASP.org. Top 10 Vulnerabilities in Web Applications. November 2006.<strong> </strong></dd>
<dt><a href="http://www.schneier.com/book-sandl.html" target="_blank">Secrets and Lies: Digital Security in a Networked World</a></dt>
<dd>Bruce Schneier, John Wiley &amp; Sons, 2000.<br />
ISBN 0-471-25311-1 </dd>
<dt><a href="http://www.cert.org/tech_tips/malicious_code_mitigation.html" target="_blank">Understanding Malicious Content Mitigation for Web Developer</a> </dt>
<dd>(CERT 2000)</dd>
<dt><a href="http://www.sans.org/top20/?portal=e5dfc06fea68d67f5756dfaef9438fba" target="_blank">SANS Top-20 2007 Security Risks </a></dt>
<dd><a href="http://www.w3schools.com/site/site_security.asp" target="_blank">2007 Annual Update</a></dd>
<dt><a href="http://www.w3schools.com/site/site_security.asp" target="_blank">Web Security</a> </dt>
<dd>W3Schools.org. An introduction. </dd>
<dt><a href="http://www.scmagazine.com/us/grouptest/details/d16ea758-1d8a-4609-a043-ae2e74f41805/web-security-2003/" target="_blank">Web Security</a></dt>
<dd>By Geoff Marshall. SC magazine. Account required to read the white papers.</dd>
<dd> </dd>
<dt> Survey Reveals How Stupid People are With Their Passwords</dt>
<dd>By Mike Lennon on Oct 12, 2010. Security Week</dd>
</dl>
</div>
<p>Web site security is a full time job because your web site is public for every hour of every day.</p>
<blockquote><p>&#8220;The heart of the issue is that if untrusted content can be introduced into a dynamic page, neither the server nor the client has enough information to recognize that this has happened and take protective actions.&#8221;</p>
<blockquote><p><a href="http://www.cert.org/tech_tips/malicious_code_mitigation.html" target="_blank">Understanding Malicious Content Mitigation for Web Developer</a> (CERT 2000)</p></blockquote>
</blockquote>
<p>Use this checklist to lesson the impact of malicious activity in cyberspace:</p>
<h3>Assess the risks (<a href="http://www.adobe.com/devnet/server_archive/articles/design_secure_webapps.html" target="_blank">Gin, 2008</a>)</h3>
<ul>
<li>Identify protected resources such as web pages, databases, employee information, and credit card data.</li>
<li>Assign relative values to each to identify which are priorities to protect with your time and tools.</li>
<li>Identify possible attackers such as hackers, ex-employees, spies, or government agencies.</li>
<li>Estimate the relative frequency of attackers.</li>
</ul>
<h3>Code with security in mind.</h3>
<ol>
<li><strong>Assess the risks of using scripts and forms.</strong></li>
<li><strong>Stay abreast of security vulnerabilities via <a href="http://www.cert.org/contact_cert/certmaillist.html%20" target="_blank">CERT</a></strong></li>
<li><strong>Set the character encoding (meta tag) to ISO</strong>
<ul>
<li>&lt; meta http-equiv=&#8221;Content-Type&#8221; content=&#8221;text/html; charset=IOS-8859-1&#8243; &gt;</li>
</ul>
</li>
<li><strong>Put code/scripts in a separate directory outside the document root.</strong> (<a href="http://oldsocs.berkeley.edu:7309/web_sec/page17.html" target="_blank">Berkman 2003</a>)
<ul>
<li>But do not put general purpose interpreters, such as perl, PHP, or shells, in the cgi-bin directory.</li>
<li>Store database account name and password in a file outside the web directory tree.</li>
</ul>
</li>
<li><strong>Recode dynamically generated pages to validate output.</strong>
<ul>
<li>Code sites so they work with or without JavaScript.
<ul>
<li>Because JavaScripts can introduce insecurities, some uses keep it turned off in their browsers. Tools like <a href="http://noscript.net/" target="_blank">NoScript</a> make it easy to turn it on when viewing a trusted site.</li>
</ul>
</li>
<li>&#8220;Any server that creates web pages by inserting dynamic data into a template should check to make sure that the data to be inserted does not contain any special characters (e.g., &#8220;&lt;&#8221;). If the inserted data contains special characters, the user&#8217;s web browser will mistake them for HTML markup.&#8221; (<a href="http://www.cert.org/tech_tips/malicious_code_mitigation.html">CERT</a> 2000)</li>
</ul>
</li>
<li><strong>Validate form data and disallow html and scripts in form fields.</strong>
<ul>
<li>Limit field data to what is needed and no more. For instance, if you ask for a person&#8217;s age in a form field, only accept numbers with 2 digits rather than any amount of any characters. In a name field, accept only a string of letters, periods, and hyphens. Apostrophes may allow SQL injections.</li>
<li>Validate/filter form data locally (during the output process) before it is rendered as part of the dynamic page.</li>
<li>If you validate form data with JavaScript, revalidate with your server script (in case JavaScript was turned off in the browser).</li>
<li>Don&#8217;t allow html tags in form textarea or input fields.</li>
<li>Add Captcha Image security functions to keep spambots from filling in your forms.</li>
</ul>
</li>
<li><strong>Examine and filter data stored in cookies.</strong>
<ul>
<li>It is a good practice to save the session data on the server, and use cookies or hidden variables just to pass a session identifier. (<a href="http://oldsocs.berkeley.edu:7309/web_sec/page35.html" target="_blank">Berkman 2003</a>)</li>
<li>Cookie data can be stolen by other web pages so don&#8217;t store sensitive data in them.</li>
</ul>
</li>
<li><strong>Don&#8217;t send scripts or personal form data via link tags. </strong>
<ul>
<li><a href="http://www.cert.org/advisories/CA-2000-02.html" target="_blank">Malicious HTML Tags Embedded in Client Web Requests</a>:  CERT® Advisory 2000</li>
<li>Send forms with method=&#8221;post&#8221; rather than method=&#8221;get&#8221; as much as possible.<br />
(<a href="http://oldsocs.berkeley.edu:7309/web_sec/page17.html" target="_blank">Berkman 2003</a>)</p>
<ul>
<li>With POST the form input is passed via standard input to the application; best for logged in sessions.</li>
<li>With GET the form input is added to the URL which is visible to users; so don&#8217;t use this option for sending personal data.</li>
</ul>
</li>
<li>Don&#8217;t pass important information via hidden variables. For instance, a BuyNow button that shows pricing in a hidden field can easily be copied, altered, and sent back so a purchase is made with the wrong pricing! Read <a href="http://archives.cnn.com/2000/TECH/computing/02/04/shop.glitch.idg/" target="_blank">Shopping-cart glitch could give hackers a discount</a>: Ann Harison CNN.com 2000.</li>
</ul>
</li>
<li><strong>Require users to create strong passwords.</strong>
<ul>
<li>And display errors to login/authentication that do not give away  missing information.</li>
<li> To prevent another user from using the back button to relog in as the previous user, create a random key for each login page, save it on the server and pass it to the browser in a hidden variable, and only allow the random key to be used once to log on. (<a href="http://oldsocs.berkeley.edu:7309/web_sec/page38.html" target="_blank">Berkman 2003</a>)</li>
<li>Limit the number of failed login attempts.</li>
<li>Prohibit shared accounts.</li>
<li>Don&#8217;t use generic account names like tester, guest, sysadmin, admin, etc.</li>
</ul>
</li>
<li><strong>Don&#8217;t list script errors on web pages that are launched.</strong>
<ul>
<li>They give away the vulnerabilities of the scripts.</li>
</ul>
</li>
<li><strong>For PHP Scripts </strong>
<ul>
<li>Upgrade to PHP 5.2 to eliminate common vulnerabilities. some of these include:
<ul>
<li>PHP Remote File Include</li>
<li><a href="http://sqlsecurity.com/FAQs/SQLInjectionFAQ/tabid/56/Default.aspx" target="_blank">SQL Injection</a> where a CGI inserts  input data into a string which is then submitted to an SQL server. See a <a href="http://oldsocs.berkeley.edu:7309/web_sec/page61.html" target="_blank">quick example</a> from Berkman.</li>
<li>Cross-Site Scripting (XSS) where the attacker tricks the victim into clicking on a URL containing a harmful script.</li>
<li>Cross-site request forgeries (CSRF)</li>
</ul>
</li>
<li>Consider using methods like <a href="http://www.suphp.org/Home.html" target="_blank">SUPHP</a> to set permissions to read only.
<ul>
<li>This method can use an .htaccess file to handle permissions for complex database-driven web applications.</li>
<li>Read more: <a href="http://itc.virginia.edu/server/web/php/suphp.html" target="_blank">Secure PHP Pages with SUPHP</a>: University of Virginia.</li>
<li>PHP&#8217;s security functions can all be turned on but most open source web applications cannot run with them on.</li>
</ul>
</li>
<li><span style="color: #cc0000;">Remove all .phps or php.txt files from the server.</span></li>
<li>Remove automatically generated directory listings.</li>
<li>Create directories outside the server tree for session and sensitive data.</li>
</ul>
</li>
<li><strong>For SQL databases</strong>, read <a href="http://www.sans.org/top20/?portal=e5dfc06fea68d67f5756dfaef9438fba" target="_blank">Sans.org&#8217;s Top 20 List</a>.</li>
<li><strong>Don&#8217;t list email addresses in web pages.</strong>
<ul>
<li>Use forms instead.</li>
</ul>
</li>
</ol>
<h3>Test your scripts for vulnerabilities</h3>
<ol>
<li>Many<br />
older scripts, free downloadable scripts, and samples scripts from textbooks do not adhere to security best practices, so test your site to see which scripts need attention. Try these tools:</p>
<ul>
<li><a href="http://sectools.org/web-scanners.html" target="_blank">OWASP Testing Guide </a></li>
<li><a href="http://sectools.org/web-scanners.html">Top 10 Web Vulnerability Scanners</a></li>
</ul>
</li>
<li>Removed vulnerable scripts from the server. <a href="http://www.w3.org/Security/faq/wwwsf4.html#CGI-Q5" target="_blank">W3.org provides a list of problem CGI scripts.</a></li>
<li>Measure your skill using the <a href="http://www.sans.org/gssp/" target="_blank">GSSP</a> or other security exams and fill commit to regularly learning new security skills.<a href="http://www.sans.org/gssp/" target="_blank"></a></li>
</ol>
<h3>Create strong passwords</h3>
<ul>
<li><a href="https://www.grc.com/passwords.htm" target="_blank">Perfect Passwords</a>: GRC&#8217;s Ultra High Security Password Generator</li>
<li><a href="https://www.goodpassword.com/password-help.htm" target="_blank">Password Dos and Don&#8217;ts</a>: Bytes Interactive</li>
</ul>
<h3>Manage passwords securely</h3>
<ol>
<li>Read about <a href="http://www.psynch.com/docs/password-management-best-practices.html" target="_blank">Password Management Best Practices</a>: MTech. 2008. And <a href="http://whitepapers.scmagazine.com" target="_blank">Password Management vs. Single Sign-On</a>.</li>
<li>Management options include:</li>
</ol>
<ul>
<li>
<ul>
<li>Desktop software</li>
<li>Browser extension</li>
<li>Hosted online service</li>
<li> Single Sign On (SSO)</li>
</ul>
</li>
</ul>
<h3>Host your web site with a reliable company that provides the following services:</h3>
<ol>
<li>Secure server room with limited access to staff and outsiders.</li>
<li>Secure credit card transaction when purchasing the account.
<ul>
<li>Is the transaction as safe if handled manually by a human?</li>
</ul>
</li>
<li>Strong password generation for accounts.</li>
<li>Daily backup of files and databases.</li>
<li>Immediate technical support to troubleshoot security issues.</li>
<li>Investment in finding the culprit (reporting to police)</li>
</ol>
<p><strong>If using e-commerce then read </strong></p>
<ul>
<li> Encrypt transmission of cardholder data<br />
and sensitive information across public networks</li>
<li> Maintain a Vulnerability Management<br />
Program</li>
<li> Use and regularly update anti-virus<br />
software</li>
<li> Develop and maintain secure systems and<br />
applications</li>
<li>Implement Strong Access Control<br />
Measures</li>
<li> Restrict access to data by business need-to-<br />
know</li>
<li> Assign a unique ID to each person with computer access</li>
<li> Restrict physical access to cardholder data</li>
</ul>
<p>Regularly Monitor and Test Networks Track and monitor all access to network resources and cardholder data</p>
<p>Regularly test security systems and processes</p>
<p>Maintain an Information Security Policy Maintain a policy that addresses information security</p>
<p><strong>If you&#8217;ve built your own server, use the Robots Exclusion to protect specific directories.</strong></p>
<ul>
<li><a href="http://www.robotstxt.org/wc/robots.html" target="_blank">Robotstxt.org</a>: Helping promote the Robot Exclusion Standard.</li>
<li>Disable web servers that are not in use because unused, unpatched web servers contributed greatly to spread of <a href="http://www.cert.org/advisories/CA-2001-19.html" target="_blank">Code Red</a>.</li>
</ul>
<h3>Transfer files with a secure connection</h3>
<ul>
<li>Encrypted WiFi connection</li>
<li>Secure FTP (SFTP) or Secure Shell</li>
<li>Logout when idle.</li>
</ul>
<h3>Use a Secure Socket Layer (SSL) Certificate when setting up online transactions.</h3>
<ul>
<li>SSL encrypts sessions between the browser and web server.</li>
<li><a href="http://www.openssl.org/docs/HOWTO/certificates.txt" target="_blank">Generating a self-signed SSL certificate</a>
<ul>
<li>Rather than purchase a &#8220;trusted&#8221; certificate, generate your own. It&#8217;s secure, but may not be trusted by your visitors.</li>
</ul>
</li>
</ul>
<h3>Browse and view media files with security features turned on.</h3>
<ul>
<li><a href="http://www.us-cert.gov/reading_room/securing_browser/#Mozilla_Firefox" target="_blank">Securing Your Web Browser</a>:<br />
Will Dormann and Jason Rafail 2008.</li>
<li>Example of a browser insecurity
<ul>
<li><a target="_blank">Mozilla browsers fail to properly handle images</a>: Vulnerability Note VU#879056. The United States Computer Emergency Readiness Team (US-CERT) is a partnership between the Department of Homeland Security and the public and private sectors. Established in 2003 to protect the nation&#8217;s Internet infrastructure, US-CERT coordinates defense against and responses to cyber attacks across the nation.</li>
</ul>
</li>
<li>Cookies: &#8220;It&#8217;s important to be aware of your cookie settings because cookies can allow sites to track your navigation during your visit to those sites.&#8221; <a href="http://www.google.com/support/chrome/bin/answer.py?hl=en&amp;answer=95647" target="_blank">Google</a></li>
</ul>
<p><!-- p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica} --></p>
<h3>Write a sound security policy.</h3>
<p>Read and use <a href="http://www.the-dma.org/privacy/creating.shtml" target="_blank">How to Construct Your Privacy Policy</a>:<br />
Direct Marketing Association.</p>
]]></content:encoded>
			<wfw:commentRss>http://pamvanlonden.com/web-security-checklist/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Setting up Password Gorilla</title>
		<link>http://pamvanlonden.com/setting-up-password-gorilla/</link>
		<comments>http://pamvanlonden.com/setting-up-password-gorilla/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 16:49:51 +0000</pubDate>
		<dc:creator>Pam Van Londen</dc:creator>
				<category><![CDATA[Basic computer skills]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Set Up]]></category>

		<guid isPermaLink="false">http://i-paint.us/setting-up-password-gorilla/</guid>
		<description><![CDATA[<a href="http://pamvanlonden.com/setting-up-password-gorilla/"><img align="left" hspace="5" width="150" height="150" src="http://pamvanlonden.com/wp-content/plugins/thumbnail-for-excerpts/tfe_no_thumb.png" class="alignleft wp-post-image tfe" alt="" title="" /></a>To help you generate strong passwords for new software or online accounts, consider a tool like Password Gorilla. It is free and simple to use. Consider putting the software on a USB drive so you can take it with you to different computers. Download and install (one time set up) Download the version you need [...]]]></description>
			<content:encoded><![CDATA[<p>To help you generate strong passwords for new software or online accounts, consider a tool like Password Gorilla. It is free and simple to use. Consider putting the software on a USB drive so you can take it with you to different computers.</p>
<p style="font-weight: bold">Download and install (one time set up)</p>
<ol>
<li>Download the version you need (Windows, MacOSX, or Linux) onto the hard drive of your computer.
<ul>
<li>Save it to the desktop so you can find it again.</li>
</ul>
<ul>
<li>Consider saving both the Mac and Windows versions so you can use it on either if necessary.</li>
</ul>
</li>
<li>Copy the program files to the USB drive.
<ul>
<li>For MacOSX, you may need to unarchive the files and follow installation instructions.</li>
<li>For Windows, drag the .exe file to the USB drive.</li>
</ul>
</li>
<li>Open the program.</li>
<li>Close the Password screen.</li>
<li>On the remaining blank window, File-&gt;New.</li>
<li>Type a master password.
<ul>
<li>Read the <a title="About the master password." href="http://fpx.de/fp/Software/Gorilla/help.html" target="_blank">Help</a> information provided by the software developer.</li>
<li>Note however, that the password you choose must be committed to memory. Other passwords you add do not; they should not be memorable.</li>
</ul>
</li>
<li>File-&gt;Save As.</li>
<li>Name the password database file something you can remember so you can find it on the USB drive.</li>
<li>Update Manage-&gt;Database Preferences to <span style="font-weight: bold">auto save</span> after each entry.</li>
<li>The program will close in 5 minutes.</li>
<li>Quit when you are done working.</li>
</ol>
<p><span style="font-weight: bold">Passwords</span><br />
When you setup a new account or launch a piece of software for the first time, a serial number or password is often required. Some programs will generate a password for you; some let you choose. If you are setting up an account and&#8230;</p>
<ul>
<li>If no password is provided or generated, then use Password Gorilla&#8217;s Generate Password button.</li>
<li>If a password is provided, then copy that password into Password Gorilla&#8217;s Password field.</li>
</ul>
<p><span style="font-weight: bold">Add a new account entry </span></p>
<ol>
<li>Open Password Gorilla and choose your new password database file from the list.</li>
<li>Type your Master Password.</li>
<li>Edit-&gt;Add Entry.
<ul>
<li>Fill in the fields with all the information you know about the account and write notes in the larger field.
<ul>
<li>If you need a password, click the Generate Password button.</li>
<li>Add special characters to it if you want.</li>
</ul>
</li>
<li>Click OK.</li>
</ul>
</li>
</ol>
<p><strong>Use a new password.</strong></p>
<ol>
<li>Open Password Gorilla.</li>
<li>Type your Master password.</li>
<li>Edit-&gt;Edit Entry.
<ul>
<li>Copy the password field contents.</li>
<li>If you want to see the password first, click the Show Password button.</li>
</ul>
</li>
<li>Paste the password into your online account login screen.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://pamvanlonden.com/setting-up-password-gorilla/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

