{"id":9608,"date":"2019-11-30T09:01:52","date_gmt":"2019-11-30T15:01:52","guid":{"rendered":"https:\/\/krisbunda.com\/blog\/?p=9608"},"modified":"2019-11-30T03:05:29","modified_gmt":"2019-11-30T09:05:29","slug":"comparing-and-contrasting-tcsec-and-itsec-security-standards","status":"publish","type":"post","link":"https:\/\/krisbunda.com\/blog\/2019\/11\/30\/comparing-and-contrasting-tcsec-and-itsec-security-standards\/","title":{"rendered":"Comparing and Contrasting TCSEC and ITSEC Security Standards"},"content":{"rendered":"\n<h3 class=\"wp-block-heading\">Security Evaluation Criteria <\/h3>\n\n\n\n<p>Let\u2019s assume I am the security manager for an organization that writes chat application software, and my company is promising all chat communications will be secure. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">TCSEC <\/h2>\n\n\n\n<p>TCSEC stands for \u201cTrusted Computer System Evaluation Criteria\u201d, and was initially issued in 1983 by the National Computer Security Center (part of the NSA). It has since been replaced by the \u201cCommon Criteria\u201d international standard. (\u201cTrusted Computer System Evaluation Criteria,\u201d 2019) The TCSEC has four divisions (or classes), labeled D, C, B, A; with A indicating the highest security. They are described, briefly, as such (with included subclasses): <\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>D \u2013 Minimal protection <\/li><li>C \u2013 Discretionary protection <ol><li>C1 \u2013 Discretionary Security Protection <\/li><li>C2 \u2013 Controlled Access Protection <\/li><\/ol><\/li><li>B \u2013 Mandatory protection <ol><li>B1 \u2013 Labeled Security Protection <\/li><li>B2 \u2013 Structured Protection <\/li><li>B3 \u2013 Security Domains <\/li><\/ol><\/li><li>A \u2013 Verified protection <ol><li>A1 \u2013 Verified Design <\/li><li>Beyond A1 <\/li><\/ol><\/li><\/ol>\n\n\n\n<p>For the chat app to achieve class D designation, nothing has to be done; this is the default for doing nothing except for evaluating the app\u2019s systems and determining they have no security features. <\/p>\n\n\n\n<p>For class C1 achievement, the chat app must have identification and authentication mechanisms. The act of installing those features achieves the mandate of separation of users and personalized data. Further, discretionary access controls are installed, which will enable \u201croles\u201d for individuals and groups. Roles can make rolling out security profiles en masse an easier proposition. All C1 features must be tested to ensure they\u2019re working. <\/p>\n\n\n\n<p>Achieving class C2 specifies Controlled Access Protection, extending C1\u2019s discretionary access controls. At this point, users are accountable for login procedures, and admins can better monitor and audit security-relevant events, or have the data to properly reallocate resources. This class also specifies media rules for cases of data that should be deleted to save disk space or other sensitive procedures that may destroy, update, or reuse data. For the chat app, it\u2019s important that users actually have messages deleted as desired, and not simply moved to a discoverable disk location. There was a mini-scandal for Snapchat in 2014 when the media played up the idea that the app wasn\u2019t fully deleting certain messages, but many users thought that was what Snapchat did to all messages. (RHEANA MURRAY, 2014) <\/p>\n\n\n\n<p>Class B1 means the chat app has \u201can informal statement of security policy model, data labeling, and mandatory access control (especially for named subjects and objects)\u201d (Dhillon, Gurpreet, 2017). <\/p>\n\n\n\n<p>Achieving Class B2 security is about Structured Protection. This means the chat app is at a point it can be considered resistant to any kind of penetration. This status is achieved by attaching documentation that specifies a well\u2014defined security model requiring discretionary and mandatory access control that is enforced on all objects and subjects. A detailed analysis of covert channels must be performed. Authentication mechanisms are strengthened. The \u201ctrusted computing base\u201d is classified into critical and noncritical elements, in order to better allocation resources in the future (it takes resources to maintain codebases, so why not designate which portions are worth extra effort, which is not as important nor high maintenance. All of this is important for a chat app, as users are more likely to expect privacy and secret communications when using this kind of app as opposed to a less personal app, like a simple phone game. <\/p>\n\n\n\n<p>Class B3 is the point where Security Domains are specified. The chat app\u2019s Reference Monitor must mediate access of all \u201csubjects to objects\u201d in a tamper proof manner. (Dhillon, Gurpreet, p. 248, 2017). The Trusted Computing Base is minimized by removing \u201cnon-critical\u201d portions\u2014this helps lighten the load of maintaining an app\u2014fewer files to maintain and monitor. The role of a system admin is defined, recovery procedures are laid out. <\/p>\n\n\n\n<p>Class A1 is reached when formal architecture documentation and verification techniques are established. Sometimes documenting software is the hardest phase to accomplish for a team, so the chat app team project manager must take this phase of project delivery seriously. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">ITSEC <\/h2>\n\n\n\n<p>The ITSEC stands for \u201cInformation Technology Security Evaluation Criteria\u201d and is the European Union\u2019s TCSEC-comparable infosec specification. (Wikibooks, 2019) Part of the documentation outlines seven security assurance requirements: <\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>E00: Inadequate assurance <\/li><li>E01: Discretionary Security <\/li><li>E02: Controlled Access <\/li><li>E03: Security Labels <\/li><li>E04: Structured Security <\/li><li>E05: Security Domains <\/li><li>E06: Verified Security <\/li><\/ol>\n\n\n\n<p>Level E0 is essentially security failure, or \u201cinadequate assurance\u201d of a security target, known as a Target of Evaluation (ToE). (Department of Trade and Industry, London, 1991)  The ToE for the chat app should not be set to E0. In fact, E0 is typically considered the absence of a target. <\/p>\n\n\n\n<p>Level E1 is considered part of \u201cConstruction Phase: The Development Process.\u201d This means the chat app has a ToE and an informal description of its architecture (how the target will be met). Optionally, the chat app will have planned security testing documentation and a library of such testing programs and tools. <\/p>\n\n\n\n<p>Level E2 is considered the first level in \u201cPhase 1: Requirements for Content and Presentation\u201d. At this point, the chat app has an SSP (System Security Policy) identifying the security objectives and threats. The security target now has a documented rationale identifying the method of use for the chat app product and describes the intended environment and its assumed threats. <\/p>\n\n\n\n<p>Level E3 is described as \u201cPhase 1: Requirements for Evidence\u201d. At this point, the chat app will require the documentation of how the proposed functionality fulfills the security objectives and is adequate to counter assumed threats. Evidence of passed tests is required. <\/p>\n\n\n\n<p>To achieve level E4, or \u201cPhase 1: Evaluator Actions\u201d, an underlying formal model of security policy must be established. The detailed design specification is created, although not necessarily to a formal standard. (Dhillon, Gurpreet, p. 250, 2017) <\/p>\n\n\n\n<p>When achieving level E5 of assurance, also described as the first level of \u201cPhase 2: Architectural Design: Requirements for Content and Presentation,\u201d the chat app will exhibit close correspondence between the detailed security architecture and the actual source code. <\/p>\n\n\n\n<p>Level 6 of the assurance model may be considered \u201cPhase 2: Architectural Design: Requirements for Evidence.\u201d It indicates the chat app has security enforcing functions and the app design is specified in formal style. This architectural spec is consistent with the formal security policy, ensuring the ToE will be met. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Comparison <\/h2>\n\n\n\n<p>The ITSEC and TCSEC seem very similar in part and in aim; both are trying to help developers produce secure products. They also seem to have similar numbers of steps when you count the subsections of the TCSEC and the seven steps of the ITSEC. <mark class=\"kt-highlight\">Another similarity is that both of these models now seem to be obsolete, replaced by the \u201c<a href=\"https:\/\/en.wikipedia.org\/wiki\/Common_Criteria\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Common Criteria (opens in a new tab)\">Common Criteria<\/a>\u201d<\/mark> (Staff, n.d.) <\/p>\n\n\n\n<h3 class=\"wp-block-heading\">To compare the two schemas in a chart, the similarities become most obvious. <\/h3>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table class=\"has-subtle-pale-blue-background-color has-background\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\"> TCSEC <\/th><th class=\"has-text-align-left\" data-align=\"left\"> ITSEC <\/th><th class=\"has-text-align-left\" data-align=\"left\"> Description <\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-left\" data-align=\"left\">D<\/td><td class=\"has-text-align-left\" data-align=\"left\">E0<\/td><td class=\"has-text-align-left\" data-align=\"left\">Minimal Protection<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">C1<\/td><td class=\"has-text-align-left\" data-align=\"left\">E1<\/td><td class=\"has-text-align-left\" data-align=\"left\">Discretionary Security<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">C2<\/td><td class=\"has-text-align-left\" data-align=\"left\">E2<\/td><td class=\"has-text-align-left\" data-align=\"left\">Controlled Access<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">B1<\/td><td class=\"has-text-align-left\" data-align=\"left\">E3<\/td><td class=\"has-text-align-left\" data-align=\"left\">Security Labels<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">B2<\/td><td class=\"has-text-align-left\" data-align=\"left\">E4<\/td><td class=\"has-text-align-left\" data-align=\"left\">Structured Security<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">B3<\/td><td class=\"has-text-align-left\" data-align=\"left\">E5<\/td><td class=\"has-text-align-left\" data-align=\"left\">Security Domains<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">A1<\/td><td class=\"has-text-align-left\" data-align=\"left\">E6<\/td><td class=\"has-text-align-left\" data-align=\"left\">Verified Security<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">References   <\/h2>\n\n\n\n<p>Department of Trade and Industry, London. (1991, June). Information Technology Security Evaluation Criteria ( ITSEC ). Retrieved November 15, 2019, from <a href=\"http:\/\/www.iwar.org.uk\/comsec\/resources\/standards\/itsec.htm#ass2\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"http:\/\/www.iwar.org.uk\/comsec\/resources\/standards\/itsec.htm#ass2  (opens in a new tab)\">http:\/\/www.iwar.org.uk\/comsec\/resources\/standards\/itsec.htm#ass2 <\/a><\/p>\n\n\n\n<p>Dhillon, Gurpreet. (2017). Principles of Information Systems Security (1.1). <\/p>\n\n\n\n<p>RHEANA MURRAY. (2014, May 9). What Really Happens to Your Deleted Snapchat Photos. Retrieved November 15, 2019, from ABC News website: <a href=\"https:\/\/abcnews.go.com\/Technology\/deleted-snapchat-photos\/story?id=23657797\">https:\/\/abcnews.go.com\/Technology\/deleted-snapchat-photos\/story?id=23657797 <\/a><\/p>\n\n\n\n<p>Staff. (n.d.). Publications: New CC Portal. Retrieved from <a href=\"https:\/\/www.commoncriteriaportal.org\/cc\/index.cfm?\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"https:\/\/www.commoncriteriaportal.org\/cc\/  (opens in a new tab)\">https:\/\/www.commoncriteriaportal.org\/cc\/ <\/a><\/p>\n\n\n\n<p>Trusted Computer System Evaluation Criteria. (2019). In Wikipedia. Retrieved from <a href=\"https:\/\/en.wikipedia.org\/w\/index.php?title=Trusted_Computer_System_Evaluation_Criteria&amp;oldid=897024036\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"https:\/\/en.wikipedia.org\/w\/index.php?title=Trusted_Computer_System_Evaluation_Criteria&amp;oldid=897024036  (opens in a new tab)\">https:\/\/en.wikipedia.org\/w\/index.php?title=Trusted_Computer_System_Evaluation_Criteria&amp;oldid=897024036 <\/a><\/p>\n\n\n\n<p>Wikibooks. (2019). Security Architecture and Design\/Security Product Evaluation Methods and Criteria. Retrieved from <a href=\"https:\/\/en.m.wikibooks.org\/wiki\/Security_Architecture_and_Design\/Security_Product_Evaluation_Methods_and_Criteria\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"https:\/\/en.m.wikibooks.org\/wiki\/Security_Architecture_and_Design\/Security_Product_Evaluation_Methods_and_Criteria   (opens in a new tab)\">https:\/\/en.m.wikibooks.org\/wiki\/Security_Architecture_and_Design\/Security_Product_Evaluation_Methods_and_Criteria  <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Comparing and Contrasting tenets of TCSEC and ITSEC Information Security Standards (which have been largely replaced by Common Criteria).<\/p>\n","protected":false},"author":1,"featured_media":9609,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","inline_featured_image":false,"kt_blocks_editor_width":"","_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[5],"tags":[784,783],"class_list":["post-9608","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-rants","tag-infosec","tag-security"],"aioseo_notices":[],"jetpack_publicize_connections":[],"taxonomy_info":{"category":[{"value":5,"label":"Rants"}],"post_tag":[{"value":784,"label":"InfoSec"},{"value":783,"label":"security"}]},"featured_image_src_large":["https:\/\/krisbunda.com\/blog\/wp-content\/uploads\/2019\/11\/TCSEC-vs-ITSEC-Security-Standards.png",1200,675,false],"author_info":{"display_name":"Kris Bunda","author_link":"https:\/\/krisbunda.com\/blog\/author\/kris-bunda\/"},"comment_info":0,"category_info":[{"term_id":5,"name":"Rants","slug":"rants","term_group":0,"term_taxonomy_id":5,"taxonomy":"category","description":"Posts focusing on off-topics, tangents, rascals, etc\u2026","parent":0,"count":32,"filter":"raw","cat_ID":5,"category_count":32,"category_description":"Posts focusing on off-topics, tangents, rascals, etc\u2026","cat_name":"Rants","category_nicename":"rants","category_parent":0}],"tag_info":[{"term_id":784,"name":"InfoSec","slug":"infosec","term_group":0,"term_taxonomy_id":788,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":783,"name":"security","slug":"security","term_group":0,"term_taxonomy_id":787,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"}],"jetpack_featured_media_url":"https:\/\/krisbunda.com\/blog\/wp-content\/uploads\/2019\/11\/TCSEC-vs-ITSEC-Security-Standards.png","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p1NcZe-2uY","amp_enabled":true,"_links":{"self":[{"href":"https:\/\/krisbunda.com\/blog\/wp-json\/wp\/v2\/posts\/9608","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/krisbunda.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/krisbunda.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/krisbunda.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/krisbunda.com\/blog\/wp-json\/wp\/v2\/comments?post=9608"}],"version-history":[{"count":3,"href":"https:\/\/krisbunda.com\/blog\/wp-json\/wp\/v2\/posts\/9608\/revisions"}],"predecessor-version":[{"id":9612,"href":"https:\/\/krisbunda.com\/blog\/wp-json\/wp\/v2\/posts\/9608\/revisions\/9612"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/krisbunda.com\/blog\/wp-json\/wp\/v2\/media\/9609"}],"wp:attachment":[{"href":"https:\/\/krisbunda.com\/blog\/wp-json\/wp\/v2\/media?parent=9608"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/krisbunda.com\/blog\/wp-json\/wp\/v2\/categories?post=9608"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/krisbunda.com\/blog\/wp-json\/wp\/v2\/tags?post=9608"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}