Net Sec

Lakukan tugas rumah & ujian kamu dengan baik sekarang menggunakan Quizwiz!

Tcp: Random initial sequence numbers

If SNs weren't random initially, the attacker could easily create a tcp session for some source (victim) and then send commands on its behalf. If an attacker could guess the tcp SN, then they could send a command to end the connection, causing DoS if they do this with all traffic.

Crime: Characteristics of spam

Inappropriate or irrelevant large number of recipients.

Browser: Execution model

1 Load content 2 Render content (process html, javascript) 3 Responds to events Events: user actions, clicking rendering: loading, timing

Crime: Spamers

>90% email sent is spam Have lists of people send messages for other people Send malware or phish Use botnets to send spam, need many IPs or will easily get blocked Typically part of a scam campaign. Legit looking websites or customer service

Botnet: Bot

A bot is often called a zombie because it is a compromised compromised computer controlled by malware without the consent and knowledge of the user.

Browser: Browsing Context

A frame with its dom A web worker (thread, javascript running in background independent of ui) which does not have a dom Every context has an origin (protocol host port) Isolated from other by same origin policy May communicate to others using postMessage, Can make network requests using XHR (XML HTTP request) or tags (<image...>) OS Process context Separation/isolation of different programs. Similar to how browser isolates different web sessions. Modern structuring mechanisms

BC: Hash pointer

A pointer to where the data is stored, and its hash so you can tell the data hasn't changed.

Session: Session

A sequence of requests and responses from one browser to N sites. Session can be long or short Without sessions, users would have to reauthenticate. Authorize user once; all subsequent requests are tied to the user.

Tcp: Routing protocol security

ARP: Malicious node can lie to gateway and say "I"M THE GUY YOU"RE LOOKING FOR" and send his MAC address. If it gets there before the actual node, the malicious node gets the data. Traffic can be read or injected into The other nodes session. BGP:

MbMal: Android Malware

Accutrack - hidden gps tracker Ackposts - steals contact info Acknetdoor - opens backdoor to infected device and sens ip to remote server. Steek/fatakr - steal privacy info/send sms Tapsnake/droisnake - posts phones location to web service. Zertsecurity/zitmo/citmo - steals banking info Risk of android malware is low

Tcp: Protocols

Address resolution protocol (ARP): Protocol designed to map ip network addressees to the hardware addresses used by a data link protocol. Gets mac address of computer with requested IP address. Reply says, "HERE I AM. Heres my Mac." Open shortest path first(OSPF): Protocol uses a link state routing algorithm and falls into the group of interior routing protocols. Looks for lowest cost path between nodes. Border gateway protocol(BGP) : Protocol designed to exchange routing and reachability information among autonomous systems (AS). AS's exchange/learn the IP address prefixes of all computers in each connected network, so they know how to send information around, and they work together to do so. Basically these are lower and lower routing algorithms. BGP is the highest, OSFP is lower, and ARP is the lowest. Routing among domains is determined by BGP. routing inside each domain is determined by OSPF (or similar things).

CC: Processing infrastructure

Adv: Ability to secure masters and push out secure images to shards Challenges: Application multi-tenancy, reliance on hypervisors, process isolation/application sanboxes.

CC: Network/Perimeter Security

Adv: DDoS protection, VLAN capabilities, perimeter security (IDS, firewall, authentication). Challenges: Virtual zoning with application mobility, creating different areas where applications run is hard.

CC: Support services

Adv: ON demand security controls (auth, logging, firewalls) Challenges: Additional risk when integrated with customer applications (can customer apps cause security risks?), needs certification and accreditation as separate application, code updates.

CC: Provisioning services

Adv: rapid reconstitution of services, enables availability, advanced honeynet capabilities Challenges: impact of compromising the provisioning service (if the cloud is compromised, you have a problem).

CCSec: Frequency analysis attack

An attack on equlity preserving encryption. Compare the histograms (distribution) of encrypted data to the distribution of public available data. If histograms match, then we can know what cyphertext value is the raw text value. lp-optimized attack: find minimum cost assignment from cyphertext distribution to plain text distribution. (use some cost metric).

CCSec: Cumulative attack

An attack on order preserving encryption. Can find mapping of plain text to cyphertext.

DA: Data Analysis Detection types Quiz

Anomoly: Model normal network and system behavior and identify deviations from the norm Hybrid: combination of misuse and anomaly detection Misuse: can detect known attacks using signatures of those attacks Misuse: Can detect known types of attacks without generating a lot of false positives Anomaly: Have the ability to detect zero-day attacks.

MbMal: Information leakage detection

App may not be intentionally malicious but could be leaking private information. One compares an apps description against its permissions to determine if its malware. (are expectations aligned with permissions), Uses NLP.

DA: Mining patterns

Association of features, (eg service=http, flag = 20) Basic algorithm association rules. Sequential patters in activity records. Designating "essential" features to compute "relevant" patterns. Relevant patterns must describe the essential features - axis attributes, reference attributes.

Tcp: Tcp Protocol stack

At each layer information gets added to the data. Tcp layer adds tcp header to data that needs to be sent. Ip layer adds ip header to tcp packet link layer adds link header to create a frame. Ip information cannot be protected by the transport layer Network layer controls can protect the data within the packet as well as the ip information for each packet. A higher layer cannot protect the information of a lower layer. But a lower layer can protect the information from a higher layer. Data link layer controls cannot protect connections comprised of multiple links.

ML: Polymorphic attacks components

Attack vector used for exploiting vulnerability. Some parts can be modified but there is always a set of invariant parts (starting point of execution). Invarant parts must be small and exist in legitimate traffic. Attack body - malicious code for the attackers purpose; shell code. Typically transformed or encrypted. Polymorphic decryptor - Decryptes the shell code, can be transformed. Byte frequencies tend to be anomalous

Session: hijacking

Attacker can steal users session token if listening to network traffic (if https for login but http for subsequent requests) Can calculate the counter and view sessions of other users if they login, or if the crypto MAC is weak. We want to use some randomly created session tokens. Can embed machine specific data into session id. But there isn't a good choice for machine information that isn't guessable. So just use random crypto session ids.

Session: Fixation

Attacker could set session token for url and trick user to clicking url. Set token using xss exploit. Get anonymous browsing session token for site.com Sends url to user with attackers session token. User clicks url to login Attacker uses now elevated session token to hijack users session. Website should always use new session token when elevating user from anonymous to logged in.

BC: Sybil attack quiz

Attacker creates a lot of fake identities and uses them to change voting outcomes or control the network. Attack is designed to attack reputation systems in a peer-to-peer network. Users giving up anonymity doesn't help to stop the attack.

Dns: Poisoning Attack In-depth

Attacker has a machine which initiates a request for a domain. Another machine floods the resolver with forged responses, trying to guess the query id. If they don't guess the right one, they wait for TTL then try again. If success, then the local resolver now has a cached incorrect/malicious IP address for the domain for the TTL. Kaminsky: Send request for a random domain (83.google.com). And flood the resolver with responses. If this fails just try another random prefix. Wash, rinse, repeat. What makes this work is listing other sibling records in the response to the actual domain that you want to poison, so along with 83.google.com ###.###.###.### you'd list www.google.com 192.168.1.1 This has shown to work in seconds.

Https: Http downgrading

Attacker intercepts traffic to an https site and presents a forwarded page to the user which only uses HTTP. So when the user logs in or does backing, the attacker sees all the information, but from the attacker to the server the connection is https. Now the attacker has all your info. Fix this by using HSTS (strict transport security). Header tells browser to always connect over https? All following visits must be over https. Refuses http. HSTS flag deleted when user clears private data or after some expiry.

Dns: Rebinding quiz

Attacker registers a domain and delegates it to a server under its control. Attackers server responds with a short ttl record. Short ttl record ensures that it can be rebound to another IP very quickly. Attacker exploits the same origin policy

ATS: Redundancy quiz

Availability: Probability the system operates correctly at any given moment Reliability: ability to run correctly for a long interval of time Safety: failure to operate correctly does not lead to catastrophic events. Maintainability: ability to easily repair a failed system.

ATS: Node connectedness quiz

Average node degree: nodes with the largest number of nodes connected to them. Node persistence: during a snapshot of internet traffic, these nodes are the ones most likely to appear Temporal closeness: nodes that interact with the largest number of nodes.

Browser: same origin policy for cookies

Based on scheme, domain and path. Scope: domain and path HttpOnly -> Do not allow client scripts to read SameSite -> restricts cross site requests (CSRF). also has a secure flag, requiring https protocol

Dns: Cache poisoning

Basic idea: give dns servers false records and get it chached. Dns uses a 16-bit request identifier to pair queries wtih answers. Cache may be poisoned when a name server: disregards identifiers has predictable ids accepts unsolicited dns records.

Dos: Source Identification

Block attack at source by filtering out requestes which have spoofed their IP. Requires isp to implement this. If one isp doesn't do it though, then the internet can be DoSed from through that ISP. So there is no incentive for deployment. As of 2014, 25% of auto systems are fully spoofable. 13% of announced IP space is spoofable

Dos: Ingress Filtering

Blocking packets with incorrect source ip addresses. Best done at customer networks where traffic load is smallest because its computationally expensive, and harder to verify the further from the source you get. Requires universal deployment to be effective.

Botnet: Detection challenges

Bot is not human. BOts are connected, acitivies are coordinated Distinguish botnets from other attacks. FOr profit resources, frequent updates, net coordination. Enterprise networks, deploy detection at router

Botnet: Bot miner

Botnet detection system that is independent of botnet sturcture and protocols.

Botnet: Detection on internet

Botnet must use internet protocols/services: Look up services (find C&C), hosting services (web servers, storage and distribution/exchange of attack related data), transport(BGP) (route/hide attack from bots to victims), identify the abnormal use of internet services that suggests botnet activities. DNS used by most bots for finding C&C.

Browser: Goals of web security

Browse web safely No stolen info Site a doesn't compromise session in another site Web apps should have same security as stand alone apps

Https: Certificate Transparency

CAs must advertise a log of all certs they issued Browser will only use a cert if it is published on a log server. Efficient implementation using merkle hash trees Companies can scan logs to look for invalid issuance.

Browser: CSP quiz

Can allow inline scripts to be run Can whitelist a thirdparty widget Its better to blacklist everyting then whitelist as you know whats needed.

MbMal: Data flow analysis

Can be used to ensure there is no API misuse or data theft. Can be used to inform users of privacy issues. Very challenging given huge android codebase.

CC: Kernel level sec tool

Can detect and remove user level malware, but cannot remote kernel level rootkit (untrusted driver) since it runs at same privilege level.

Tcp: IP authentication.

Client is trusted to give correct source ip. Can easily forge the wrong source ip and there is no authentication built into IP. This enables anonymous DDos/infection/malware attacks.

Dns: Example

Client looks up www.cc.gatech.edu Local dns resolver does this: 1. Ask root & ude dns servers what ip of www.cc.gatech is. Server says I don't know. But here is the dns server for gatech.edu. 2. asks gatech dns server what ip of cc.gatech.edu is. Server says i don't know but here is the dns server for cc.gatech.edu. 3. Asks cc.gatech.edu server where www.cc..... is . Server responsd with IP.

CCSec: ORAM quiz

Client must have private source of randomness Data does have to be encrypted even though there is no access pattern Each access to the remote storage must have a read and a write.

Tcp: Tcp handshake

Client sends syn request Server sends response with specifically generated numbers. Ack is sent from client to server (which now contains a sequence number). Connection is established. All further packets have their sequence number incremented by 1. Packets with a SN (sequence number) too far outside the expected window are dropped.

CC: Relevant cloud components

Cloud provisioning services cloud data storage services cloud processing infrastructure cloud support services cloud network/perimeter security elastic elements: storage, processing, virtual networks.

Browser: Origin

Combination of URI (uniform resource identifier) scheme, hostname, and port number.

Tcp: IP routing

Connectionless: Its unreliable and a "best effort". Not all packets get from A to B. Results: data corruption, lost packets, duplicate packets, out of order delivery. Ports are not part of IP header. Ip host knows location of router (gateway) Ip gateway knows route to other networks. If user data is too large, it gets fragmented into multiple packets and then reassembled at destination. If destination did not receive a particular packet, it sends a icmp packet to source to indicate packet was dropped. (Internet control message protocol) IP header can contain ttl field. ttl decreases at every hop. And packet is dropped if packet reaches ttl==0. P{revents infinite loops.

Browser: Web attacker

Controls malicious site Can obtain ssl tls certs for site Wait for user to visit site Setup web app and wait for user to download app. Very passive, waits for users to interact. Network attacker: Passive and active attacker. Passive: eavesdropping Active: evil router, dns poisoning (change ip address of legit site to something the attacker controls), traffic injection Malware attacker: Malware installed on users computer. Escapes browsers isolation mechanism. Browsers may have exploitable bugs, and often enable remote execution of code. Other vulnerabilities such as Cross site scripting (XSS) SQLi (SQL injection), CSRF(cross site request forging),... mostly on

Browser: Cors quiz

Cors allows cross-domain communication from the browser Corrs requires coordination between server and client Cors is widely supported Cors header cannot be used (is no substitute for good security) to secure resources on a website.

BC: Double spending attack

Create a chain of transfers which you give a coin to more than one person. Each person looks as if they own the coin. Main design challenge in digital currency.

BC: Transfer coins

Create a new statement that says pay this to person B. This message is signed by person A since he owns the coin. The message contains a reference to the coin which was transferred. Each transfer adds a new link to the list. So each coin contains all the transfers.

Crime: Botnet master

Create operate malicious network of compromised computers. Rent out botnets to other actors

Crime: Crowdturfers

Create, verify, and manage fake accounts. Crowdsourcing to solve captchas for a fee.

Crime: Hosting providers

Criminals need bulletproof hosting providers which typically operate in lawless parts of the internet. Offers dedicated servers to other actors.

Browser: Crypto Checksums

Cryptographic has functions that are one-way are less vulnerable to preimage attacks Hash functions should not take a long time to calculate Good cryptographic hash functions should employ an avalanche effect

CC: Cloud sec Advantages

Data fragmentation/dispersal, dedicated security team, greater investment in security infrastructure, fault tolerance and reliability, greater resiliency, hypervisor protection against network attacks, possible reduction of Cert & auth activities (pre accredited clouds), simplification of compliance analysis, data held by unbiased party, low cost disaster recovery, on demand security controls, real time detection of system tampering, rapid reconstitution of services, advanced honeynet capabilities.

DA: Decision tree quiz

Decision trees can... Supplement honeypot analysis and penetration testing. Can highlight malicious activity Can characterize known scanning activity. Can detect previously unknown network anomalies.

Crime: Deep web Dark web Surface web

Deep web is not indexed by search engines. Dark web is only on peer to peer networks, commonly using nonstandard protocols and ports Surface web: the web as we know it, via search engines.

CCSec: Property preserving encryption (PPE)

Deployability: no change to application and database servers. Expressiveness: supports most common sql queries Efficiency: ~25% overhead. Secure We can use different types of encryption to encrypt data that we want to preserver order to preserver equality so we can still analyze the data while its encrypted.

ATS: Secret sharing

Distributes shares of secret among participants. Individual shares of no use on their own. Can only reconstruct secret when shares are combined together. Even if a single share has been compromised, the attacker cannot do anything with it.

ATS: Secret sharing math

Divide data into N pieces Dn (k,n) threshold scheme. with k=n all participants are required together to reconstruct the secret. Shamirs secret sharing: Choose at random k-1 coefficients, a1...ak-1. And let Secret be a0. q(x) = a0 + a1x + a2x^2.... ak-1x^k-1 We make the secret share a set of points q(yi) where yi is randomly chosen. Since k points uniquely determining a polynomial of degree k-1, once q(x) is determined then evaluate S=q(0) = a0 which is the secret. So given any k shares we can reconstruct the secret. Any fewer k and there are an infinite set of polynomials that would work for the set of k-1 points. There is also a modulo prime number p somewhere in there. Given (xi,yi) where yi=q(xi), use lagrange interpolation to compute q(x) We could create many shares (n) but only have a degree k = n/2 polynomial. So this would require k shares before you could determine the secret. Shares can be added or deleted without affecting others. Easy to create new shares without changing secret. Easy to create hierarchichal schemes, Some people might have more shares than others. Regardless of computing power of attacker, the best you can do with less than k shares is a random guess.

Dns: DNSSEC Signing

Dns resolving steps sign each step with the servers private key. So we can decrypt with the public key and know that the ip address indeed came from the authentic server.

Dos: Client Puzzles

During DoS attack, every client solves a puzzle to slow down DoS traffic. This will slowdown everyone. But the legitimate requests will be small in comparison to the DoS traffic so real clients less effected. Puzzle hard to compute answer (2^n) easy to check (O(n)). Ie in NP Hardness of puzzle (n) can be decided based on attack volume. Hurts low power computing devices a lot. Memory bound functions scale better for machines with low cpu power like cell phones.

Dos: Scanning Random Scanning Permutation Scanning Signpost Scanning Hitlist Scanning

Each compromised computer probes random addresses All Compromised computers share a common psuedo-random permutation of the ip address space. Uses the communication patterns of the compromised computer to find new target A portion of a list of targets is supplied to a compromised computer.

ATS: Naive Crypto secret sharing quiz

Each of a set of parties keeps a share of the seecret. PROBLEM: The more shares you have of the secret, the less work you have to do to guess the secret Individual shares SHOULD be of no use on their own.

Https: SSL/TLS

Each person has private/public key Get public key from Cert Authority(CA). Users can verify that the certificate was properly certified via a CA Subjects CommonName can be cc.gatech.edu or *.gatech.edu. (* does not match .)

ML: Payload based anomaly detection system (PAYL)

Each service has its own unique network traffic patterns. Features are relative frequency of characters or their std dev. Can score packets based on their anomalous score.

Malw: Analysis Difficulty

Easy to Hard to do Automated analysis Static analysis Interactive behavior anlysis (running in an isolated environment) Manual code reversing (disassembler/decompiler to recreate code) Also in the list above, harder techniques yield more information.

Tcp: Security

Eavesdropping, packet sniffing can occur if packet passes by untrusted host. TCP state easily obtained by eavesdropping. Enabling spoofing and session hijacking (he now knows the SN). Subject to DoS attacks.

Threat: Entropy quiz

Entropy is randomness for use in cryptography or other applications that require random data. two sources of entropy: hardware sources and randomness generators. A lack of entropy will have a negative impact on performance and security.

DA: Entropy/Information Gain

Entropy: The minimum number of bits needed to represent the examples according to their class labels, or roughly how pure the examples are. If the examples are evenly distributed into different classes, the entropy is the maximum, if the examples are all in a single class, the entropy is minimum. Compute information gain and pick decision tree branch based on feature with highest gain.

Dns: Rebinding Attack

Essentially the attacker binds a corporate webserver to look like its on the same network as the malicious website. Now the browser can lookup arbitrary documents since its on the same origin. Dns Pinning mitigates this. It refuses switching to a new IP. Interacts poorly with proxies, vpn, dynamic dns. Not consistently implemented in all browsers. Server-side defenses: Check host header for unrecognized domains Authenticate users with something other than ip. Firewall defenses: External names can't resolve to internal addresses. Protects browsers inside the organization

Pen: Penetration testing

Evalulate strength of all security controls Procedurals operational technological Benefits: Determine security of network, discover vulnerabilities, demonstrate threats. Scope: Can include social engineering, physical access Scale: entire security network.

Botnet: Growth of botnet

Exploit based propogation - infection grows exponentially in initial phase email-based propogation: exponential or linear dry-by egg download: sub linear

ML: Attacks on ML

Exploratory attack, attacker uses examples to find decision boundary of ML model, then crafts attack to avoid detection. Also called evasion attack. Causative attack (data poisoning): Attacker injects malicious examples to affect the ML training process that as a result is not able to produce an effect ML based model.

MbMal: iOS malware

Fairplay Man in the middle Attacker makes the user think he's bought an app from the app store and gets a malicious app installed on the users device.

Dos: Edge Sampling (for traceback)

For traceback, store the starting router (p), ending router(p-1), and distance since starting router There is a formula for how many packets on average are needed to reconstruct the path.

Browser: Frame security

Frame: Rigit division as part of frameset. iFrame floating inline frame. Why use frames? Separation of web content. Delegate screen area from content from another source. Browser provides isolation based on frames. Parent may work even if frame is broken. Frames cant really interact unless they are from the same origin. Frame frame relationships: Is frame allowed to execute script that manipulates abritrary/nontrivial dom elements on frame b? Can frame a change the origin of frame b? Frame principle relationships: Can frame A read/write cookies from site S?

ATS: WWW robustness quiz

Internet has High degree of tolerance towards random failures and low degree of tolerance against attacks. Most successful attacks target the nodes that are most connected.

Tcp: S-Bgp

IpSec: secure point to point router communication. Public key infrastructure authorization for all s-bgp entities. Attestation: digitally-signed authorizations. Address attestations proves authorization to advertise specified address blocks. route attestations: validation of updates based on a new path attribute using pki certicficates and attestations. This requires repositories and tools to manage all this.

MbMal: Detection

Kirin, system that checks for suspicious combinations of permissions. RiskRanker - Static analysis tool - manually defined suspicious features. Droidranger looked for loading native code from suspicious websites. DREBEN - uses an SVM to determine if an app is malicious. Easiest way to develop malware is to repackage popular app with malicious activity. There are some similarity tools to detect repacked malware. Behavior analysis - Some use sys call information.

CCSec: Standard encryption

Leaks nothing except the size of the data.

Https: Certificate Pinning

Let a site declare CAs that are authorized to sign its certificates (similar to hsts). On subsequent https, browser rejects certs issued by other CAs TOFU: Trust on First Use

CCSec: Dont trust cloud

Lets keep application on our side and store data on cloud. But this leaks data access patterns. Can use oblivious ram.

Pen: Social

Liking: Desire to fit in and be more easily influence by someone you like Scarcity: A desire to pursue a limited or exclusive item or service Commitment: A desire to act in a consistent manner Social proof: Looking to others for clues on how to behave.

BC: Block chain

Linked list of hash pointers, with the head at the end(last) element of the list. In order for a hacker to change the data in a blockchain, he must change all the hash values, because one change in the data, causes a rippling change of the hashes all the way back to the root node. And so if we just keep the root node, we can verify the integrity of the whole block chain..

ML: Adversarial ML

ML in the context of attackers.

Browser: Subresource integrity

Many pages pull scripts and styles from many content delivery networks. Page author specifies hash of resources they are loading, browser checks integrity of hash. Browser can report violation and not execute resource. Or can just report the violation and still render the resource.

Browser: Modern Websites

Many parties contribute to the code on a website. Ads, third-party libraries, the content owners, page devs, service providers, data providers, cdns, other users, extension developers. Questions:

CC: Hypervisor sec

Put security tool in a separate virtualization. The security tool in one VM can do introspection into other vm through hypervisor.

CC: Main concern in moving to cloud computing

Security is the main concern

Crime: Spammers

Send out spam (typically from botnets)

ML: Poisoning attack goals

Stays undetected. Continues for a period of time. Causes damage to data.

Threat: Tcp/IP quiz

Tcp is used to break up and reassemble data into packets. IP is used to move packets from router to router.

Dos: target of attack Server Application Network Access Infrastructure

The attack is targeted to a specific application on a server The attack is used to overload or crash the communication mechanism of a network. The motivation of this attack is a crucial service of global internet operation, for example core route.

DA: Generalization

The most important property of machine learning.

Tcp: Network teirs

Tier one: Network can reach every other network through peering Tier two: Network that peers some of its network access and purchases some of it. Tier Three: Network that purchases all transit from other networks

MbMal: Produce stage

Toolchain attacks - codeGhost - infected version of xcode, any app built with it is now infected. Could steal appname, device name/type, network type, system language and country, device uuid.d Attack appstore, review process can't find code which executes evil behavior. But a backdoor allows different control flow than initially seen.

Tcp: Tcp

Transmission control protocol Connection oriented, preserves order of packets. Breaks data into multiple packets. Attaches sequence number. Receiver acknowledges receipt, lost packets are resent. Packets are reassembled in original order.

CC: Security issues

Trust, multi-tenancy, encryption, compliance. Challenging - massive complex systems, simple primitives, and common functional units replicated thousands of times. Tractable problem however - There are both advantages and challenges.

Crime: Profit - Carders, Cashers, mules

Turn stolen bank accounts and credit cards into cash and help launder money.

Dos Syn flood defense

Use a proxy to manage all syn requests. In an attack, it has plenty of power to manage the flood of requests, and it only forwards the completed ones on to their destination.

CC: Active monitoring

Uses hooks (like in libVMI) to know when certain events happen.

MbMal: Stamp

Uses static/dynamic analysis to determine if app is malicious. Intended to be used in app store.' Focuses on data flows.

Https: Disadvantages

You need to buy an ssl certificate. Difficulty loading insecure content on a secure site. Proxy caching problems, public caching cannot occur (since all traffic is encrypted) Browser caching works properly Https doesn't use a lot of resources https doesn't usually, but CAN introduce latencies.

Threat: Zmap vs existing network scanners.

Zmap: eliminates local per conneciton state to keep resources low (others keep all this info). shotgun scanning: some hosts will not respond, but so will only send n probes per host. Send scans as fast as network allows. Probe optimized network stack, bypass inefficiencies by generating ehternet frames. zmap is ~1300 times faster than nmap and has better coverage. Nmap scans timeout, since zmap doesn't keep track of state but has a deterministic response its looking for, it never times out waiting for a response, therefore it has higher coverage.

CC: Storage Services

adv: Data fragmentation/dispersal. automated replication, provision of data zones (by country), encryption at rest and in transit, automated data retention. Challenges: Isolation management/data multi-tenancy, storage contoller (single point of failure/compromise), exposure of data to foreign governments.

Https: SSL/TLS Overview

client sends hello msg Server responds with Public key cert Browser verifies certificate Client exchanges key Now they have shared key that they can send information back and forth with Once this connection is established it means that, browser trusted a CA certificate, and that the cert was valid and not expired and that the domain matched the cert common name (or subject alternative name)

BC: Coin transactions - Scrooge

create coins transaction creates new coins (signed by scrooge) Pay coins, consumes coins, destroys them, and creates new ones resulting in the same total value. Typically with new owners.

BC: Hash function

easy to compute, compute message of data of any size fixed length output. One way function, no way to find m from H(m). Designed to be collision efficient., Weak collision resistance: given m1 it is intractible to find m2!=m1 such that H(m2) = H(m1) Strong collision resistance: intractible to find m1!=m2 such that H(m1) = H(m2)

Dns: Defenses

increase Query id size Randomize source port, additional 11 bits. - Now attack takes several hours.

Browser: COokies - Scope setting rules

login.site.com can set cookies for site.com but not for another site or TLD (other.site.com, nah.com, .com) Path can be anything

Malw: Ether

Malware analyzer that fulfills the malware analysis requirements (see Emulation Analysis Problems) Ether unpack extracts hidden code form obfuscated malware. Ethertrace records sys calls executed by obfuscated malware.

Crime: Underground forums

Many operate in plain site. They can be found in google search. Large volume of illicit goods and services are available. Law enforcement watches, but another can just start up. Useful for security professionals. Give researchers view into underworld. Allow white-hats to observe trends and detect unfolding attacks. Has buyser sellers and rippers (stealing from naive buyers or selling fraudulent goods). mostly ads for request or sale, or trade. Deal done over private message.

ML: Polymorphic blending attacks

Matches the normal profile of legitimate traffic (byte frequency is similar).

CC: Security quiz

Most data in transit is encrypted Only 10% of providers encrypt data at rest. Not all data at rest needs to be encrypted.

CC: Cloud sec challenges

Multiple International privacy laws. Need isolation management, multi-tenancy, logging challenges with distributed programs, data ownership issues (does google or their client own the data produced and used in their app?), quality of service guarantees, dependence on secure hypervisor, attraction to hackers, security of virtual OSs in the cloud, possibility for massive outages. public vs internal cloud security, lack of public SaaS version control. Encryption needs for cc: encrypting access to cloud resource control interface, administrative access to OS instances, access to applications, application data at rest.

Dns: Record types

NS: name server - points to other server A: address - contains ip address MX: address in charge of handling email. TXT: generic text (used to distribute site public keys (DKIM).

Malw: Evolution

Network level protection Firewall - Evaded by C&C protocol congruency (looks like normal traffic) IPS/IDS - Evaded by custom encodings (hard to analyze some made up encoding of data) Host-Level protection - Do you want the following program to make changes? (Uninformed user may click yes) Antivirus SW Traditional signature matching doesn't work well when the code is obfuscated.

Pen: Soc Eng Defense

Never disclose passwords Limit IT information disclosed Limit information in auto-reply emails. Escort guests in sensitive areas Question people we don't know Educate everyone about security Centralized reporting of suspicious behavior

ATS: Asynchronous distributed systems.

No guarantee of system reliability. Nodes may behave arbitrarily. Independent node failure. Attackers cannot indefinitely block a nodes from providing service and cant break crypto.

Malw: Reverse Eng emulator

No knowledge of bytecode program, no knowledge of emulators code. Abstract variable binding, identify pointer variables within raw memory of emulator using access patterns. Identify candidate VPCs (instruction fetching). Identify emulator phases, identify decode-dispatch loop.

CC: Virtual box security

Not safe to share clipboard or allow vm to read/write files on host machine with same privileges as host machine. Safe to disconnect VM from internet when opening questionable files.

ATS: Attack tolerance

Fault tolerance does not imply attack tolerance and requires different methods. Redundancy is not a solution. Diversification: All instances should use a different implementation, across all layers of the stack. Each using a different security protection mechanism or different part of the program. Not all operations are checked all the time (efficiency). Very costly to implement and hard to implement. Moving target: Dynamically change network and system configuration. Many instances of system and network services.

ATS: System properties

Fault tolerance: Has both safety and liveness. Safety: even if system fails nothing serious happens. Livenss: clients can eventually recieve replies to their requests. Need n = 3f + 1 replicas, f is maximum number of faulty replicas. By communicating with n-f replicas we can proceed, since f might be not responding. F replicas that didn't respond may be non-faulty. So f of responses may be faulty. n-2f > f therefore n > 3f.

Pen: Scanning

Find Which machine is up. which ports are open What services running Versions and configs of services Lookup vulnerabilities on web based on this version of software (this version of apache web server). Do research on what would break this software. Focus on most promising avenues of entry. Reduce frequency and volume of scanning and analysis. Randomize ip ports and ip addresses to be scanned in the sequence. Tools: Ping sweep: fping nmap TcpUdp Port scan: nmap fscan OS detection: nmap queso

Dos: Traceback

1 Append all nodes to packet 2 Sample single node with some probability - Takes a lot of samples because order is not obvious. Takes a lot of samples to get a packet which preserved its node mark from the first router that sent it. (p^N where N is routers in the path). 3. Sample edges so that order of routers is known. Now we just need enough packets and the order can be easily inferred. Also keep track of number of hops since the edge was recorded.

Threat: Certificate Chains

A browser trusts some root certificate authorities. Then the roots have a list of people they trust and can sign to trust other authorities and so on. the top certificate is a self signed certificate (the original browser trusted certificate, first list in chain).

Session: Active/passive sess hijack

Active session hijacking involves disconnecting the user from the server once that user is logged on. Social engineering is required to perform this type of hijacking. In Passive session hijacking the attacker silently captures the credentials of a user. Social engineering not required.

ML: Polymorph. attack requirements

Adversary has knowledge of the IDS Advers. can observe some normal packets going from advers. network to victim. Advers has estimation of false positive rate of IDS.

Dns: quiz

All domain names and ip addresses are stored at the central registry It can take several days for information to propogate to all dns servers.

ML: Worm signature generation

Gather normal traffic, traffic clustered and classified, generate signatures from clusters. Store in firewall (NIDS). Traffic based flow classifiers include: Simulated honeynet, double honeynet, port-scanning detection, anomaly IDS.

Session: Overview

Always assume cookie data retrieved from client is adversarial (evil). Session tokens are split across multiple client state mechanisms. Cookies, hidden form fields, URL parameters, Cookies themselves are insecure (csrf, cookie overwrite) Session tokens must be unpredictable and resist theft. Ensure logout invalidates session on server.

Https: Forged Certificates

An attacker has a forged/rogue certificate so the user connects to the attacker via https (because it thinks the cert is good). And the attacker connects over https to the actual server. Now the attacker has established an https only man in the middle attack.

Botnet: Network monitoring

Attacks used to be well defined and obvious - Payload contains exploit to a vulnerability, volume/rate suggests DoS/spam/etc. Firewalls and network intrusion detection systems - Designed to identify attack traffic. Traditional firewalls/nids - Bypassed by mobile devices compromised while outside network perimeter, when brought in, they have bypassed firewall. Attack traffic is now very subtle, C&C traffic looks like normal http web traffic. Need more advanced net mon systems.

Threat: Internet wide security scanning

Benefits: Expose new vulnerabilities, track adoption of defensive mechanisms, probing the ENTIRE ADDRESS SPACE WITH EXISTING TOOLS IS BOYTH DIFFICULT AND SLOW..

Botnet: Botnet

Botnet is a network of bots controlled by a bot master (attacker). Coordinated group of malware instances that are controlled via c&c channels. C&C centralized (IRC, HTTP), distributed (P2P) botnets responsible for: more than 95% of all spam, all ddos attacks, click fraud, phishing & pharming attacks, keylogging & data identity theft, distributing malware/spyware, anonymized terrorist & criminal communication

Botnet: detection challenges

Bots are stealthy on the infected machines, bot infection is usually a multi-faceted and multi-;phased process (looking at specific aspect is likely to fail), bots are dynamically evolving (static/signaturebased approaches may not be effective), botnets can have very flexible design of C&C channels (solution very specific to a botnet instance is not desireable).

Botnet: Traditional security fails

Bots user packer, rootkit, frequent updating to easily defeat anti virus tools. IDS/IPS - look at only specific aspect (payload of exploit), do not have a big picture (bots are for long term use). Honeypot: not scalable, passively waiting, bots can detect/discover honeypot/net, not good botnet detection tool.

CC: Secure In-VM Monitoring (SIM)

Bring sec to traditional in-vm approaches. Addresses sec and performance requirements together (same sec as out of vm approaches, performance close to traditional in vm approaches). Utilize hardware virtualization features ( no hypervisor intervention during monitoring invocation, untrusted vm read/writes are at native speed). Monitors execution should not rely on untrusted code and data. Need isolation of security tool from untrusted VM.

Session: Storing session tokens

Browser cookies are insecure Url links with embedded session ids could be accidentally shared Hidden form fields must result in form submission for every user action. Must choose combination of these options.

Browser: How Cors Works

Browser sends origin header with xmlhttprequest request Server can inspect origin header and respond with Access-control-allow-origin header for specific urls (or all)

CCSec: Oblivious Ram

Can hide access patterns. For any fixed size request sequence, the associated storage accesses observed by the cloud are statistically independent of the request. (hide access pattern from cloud provider) Techniques: Operates on fixed size data blocks, encrypts blocks with ciphertext indistinguishability, dummy accesses/re-encryption/shuffling/etc.

Threat: Zmap probing

Can just probe ip addresses numericlaly. Must do in psuedo random way. Zmap uses current_num * generator % prime, generator = 5 and prime = 7 will loop through numbers 1->6 in a random order. Generate a new generator (aka primitive root), and a new random starting address. Once the starting address is reached again, we know we're done.

Threat: Zmap

Can scan 98% of ipv4 address space on gigabit ethernet within 45 minutes. ( for a single port).

Browser: Cookies client read/write

Can set or read cookie attributes or delete. Http only cannot be accessed by client side scripts

BC: bitcoin safegaurds

Cannot steal bitcoins. But preventing double spending is only via probability. The more consensus you see that a bitcoin has been spent the more likely it is that it has indeed been spent.

DA: Feature construction from patterns

Compare and identify intrusion-only patterns. Parse each intrusion pattern. Identify the anatomy (reference and axis) and invariant information of an attack. Apply count, percent, and average operations to add temporal and statistical features.

Dos: Syn Flood alteration

Complete the tcp request. Then send request for a page over and over to take down website. With this the actual ip of the bots is revealed.

Dos: Captcha

Completely Automated Public Turing test to tell Computers and Humans Apart Only process requests with valid captcha solution.

Malw: Packing

Compressing/encrypting/obfuscating/transforming the executable in some way to hide its purpose. Code that reverses the pre-runtime transformation is included in the executable A signature scanner that tries to identify malware by its unique strings would not be effective.

Dns: Dnssec

Gaurentees: Authenticity of Dns answer origin Integrity of reply Authenticity of denial of existence Accomplisheds this guarantee by signing Dns replies at each step of the way Uses public-key cryptography to sign responses Typically use trust anchors, entries in the operating system to bootstrap the process.

Dos: Spoofing Subnet spoofing random spoofing fixed spoofing

Generate random addresses within a given address space Generate 32 bit numbers and stamp packets with them Spoofed address is the address of the target

Pen: Escalating privelege

Get higher level access Password cracking: john the ripper Known exploits: Lc_messages, Getadmin, sechole

Tcp: Bgp Attacks

Create false route or kill legitimate one causes DoS Attacker controls device along the victims communication path is SNIFFING Hijack traffic from a legitimate host for routing to endpoints in a malicious network. Creating route instabilities has not been used by hackers yet because damage cannot be contained. It can blowback to the attacker. Unmasking the AS relationships by hacking the routing table is revelation of network topologies. Solutions Autonomous system(AS) obtains certificate (ROA) from regional authority (RIR) and attaches ROA to path advertisement. Adverts without valid ROA are ignored. Defends against malicious AS but not a network attacker.

BC: Hash function quiz

Hash functions do not have a key Its hard to find two messages with the same hash value Hash functions are pirmarily used for message integrity.

Pen: Soc Enge Impersonation

Help desk: Attacker pretends to be an employee who needs help from helpdesk. Recover password, etc. Helpdesk doesn't usually require much info. Third-party authorization: Claim that third party has authorized access to sensitive information. More effective if the third party is not present/cannot be reached. Tech support: Attacker claims that company needs to reconfigure system and asks for user credentials. Roaming halls/tailgating: Passwords on stickynotes, important papers, etc confidential conversations. Repairman: typically allowed access to facility. Plant listening devices. Users typically do not question people in uniform. Trusted authority figure: Pretends to be medical personnel, home inspector, school superintendent. Impersonate via phone or in person. Trust is perceived authority Snail mail: Attacker sends mail asking for personal information, pretending to be authority. users tend to trust printed material.

CC: Vm Monitoring challeneges

High overhead, Invocation cost: requires switching to hypervisor when sec tool is invoked, especially for fine-grained monitoring, (control flow goes from VM to hypervisor to VM (running sec tool). Introspection cost: Accessing memory VM is slow.

Threat: Validating responses (zmap)

How can we validate packet responses without local per-target state? Encode secrets into mutable fields of probe packets that will have recognizable effect on responses. Encode a hash of something deterministic into the sequence number. So we can calculated the returned ack number.

Malw: Emulation Analysis Problems

Emulation falls short. Attacks exploit the difference in execution between real machine and emulator and switch off their evil behavior when they know they are being watched. Identical notion of time Network based timing measurements Impossible to identify all Equivalent to the problem of detecting and removing covert channels - which is undecidable.

Https: Https

Encrypted using SSL/TLS Allows secure channels over insecure network Reasonable protection against man in the middle attacks. Can still provide security even when only one side of the communication is secure. Https can slow down web servers if its not implemented correctly. Designed to thwart network sniffers/observers.

Browser: html sandbox

Ensures iframe has unique origin and cannot execute javascript, no form submission, disable APIs, prevent content from using plugins,etc

Dos: Traceback

Idea: Store the ip of a router along a path into the packet. If we do this probalistically, then under a dos attack, the majority of the packets are coming along some similar paths, then you can tell where the DoS attack is coming from because very quickly you get all the IPs along the path.

Browser: Cookies identified

Identified by name (userid), domain(login.site.com), path(/home/introduction)

Pen: Gaining Access

Identify a vulnerability of target from scanning and exploit it. Often done with preexisting tool/script. may need modification. May need to develop exploit yourself. Password eaves dropping: tcpdump ssldump Fileshare brute forcing, NAT legion Password file grab: tftp pwddump2 Buffer overflow: ttdb, bind

Pen: Enumeration

Identify valid user accounts or poorly protected resource shares (filesharing). More intrusive probing than scanning step.. Tools: List user accounts: Null sessions, dumpacl, sid2usre, onsiteAdmin List file shares: Showmount, NAT Identify applications: Banner, telnet, netcat, rpcinfo

ML: Misleading worm signature quiz

If we can completely control the training data gathering process and determine the authenticity and integrity of the data. then we don't have to worry about data poisoning. If the training data is obtained in an open environment, there is always the potential risk of poisoning attacks.

Pen: Social engineering techniques

Impersonation: Helpdesk third party authorization tech support roam halls/tailgate Trusted authority/repairman figure snail mail Computer based techniques popup windows instant messages and IRC email attachments email scams chain letters and hoaxes phishing websites

Tcp: Address Attestation

Indicates that the final AS listed in the UPDATE is authorized by the owner of those address blocks. Contains information about: owner's certificate AS to be advertising the address blocks address blocks expiration These are digitally encrypted by the private key of the server. Protect BGPs from erroneous updates.

Tcp: route Attestation

Indicates that the speaker or its AS authorizes the listener's AS to use the route in the UPDATE. Contains information about: AS's or BGP speakers certificate issued by owner of the AS the address blocks and the list of ASes in the UPDATE the neighbor expiration date To verify a route, address attestation from each organization owning an address. address allocation certificate from each organization route attestation from every AS along the path certificate for each AS all relevant CRLs must have been checked.

Crime: Botnets

Infected computers Have spare cpu cycles, Unique ip address and bandwidth. Botnets allow criminals aggregate control of infected machines. Command and Control C&C infrastructure for controlling bots. Often rented out.

Crime Botnet:

Irc channels (internet relay chat) are easy way to send commands. Single command gets broadcast over twitter count. Peer 2 peer botnets also Most popular: Create command control website and all bots connect to it. Domain name Can be shut down by isp. Can move domain to different ip every few seconds. Fast flux: moving to different ip very quickly (every few seconds). Random domain generation, Botmaster and botnets generate random domains using the same algorithm (so they are the same) and try to connect.. Bot master registers a few of these domains.

Botnet: BOthunter signature engine

Looks for specific signatures of malware

Botnet: Bothunter SLADE

Looks for unusual payload (egg download)

Dos: syn flood

Lots of tcp connection requests are sent to a server but the source is spoofed. Server tries to send back next part of handshake but they get no response. They must keep the state of the handshake in memory. Fulls up server with backlogged handshakes. Defense: remove state from server small performance overhead

BC: Scrooge/append only

Make history append only and an authority is the only one allowed to sign for transfer of coins. This prevents double spending.

CC: libVMI

OPen source introspection library, access to virt addresses, kernal sybmols, and more. Features: Read/write vm memory, virtual memory translation, find/map guest OS data structs, place monitoring event-hooks into guest (catch exceptions/page faults), pause guest and transfer control to callback function (hook), memory rwx events, rw events on registers, interrupt events, single step through instructions.

Browser: browser vs os

OS: Primitives: sys calls, processes, disk Principles: Users discretionary access controll Vulnerab: Buffer overflow root exploit Browser: primitives: document, object model, frames, cookie/local storage Principles: origins, mandatory access, control Vulnerab: Cross site scripting, cross site request forgery, cache history attacks.

Malware: Malware emulators

Obfuscate (pack) a binary emulator which runs some bytecode in an arbitrary language L. When running static analysis or automated tools, the emulator is what is analyzed (which has no malicious behavior), where as the data in the program is whats malicious. manual reverse engineering doesn't scale. In theory automated reverse engineering this is undecidable problem. However, emulators fetch-decode-execute behavior can be identified at runtime.

ML: Evasion tactics

Obfuscating internal data: uses a number of tricks to run code that cannot be detected by the analysis system. Confusing automated tools: allows malware to avoid detection by technologies such as signature based antivirus software. Environmental awareness: allows malware samples to detect underlying runtime environment of the system it is trying to infect. Timing based evasion: used by malware to run at certaintimes or following certain actions taken by the user.

ML: Blending steps poly.

Observe traffic from A to B. Using IDS algo, generate estimated artificial normal profile. Create attack instance that matches normal art. profile (using shellcode encrypt, and padding). Launch attack, IDS should not detect these packets.

CC: Cloud comp characteristics

On demand self service Broad/wide network access resource pooling or sharing measured service rapid elasticity.

Pen: cover tracks

Once total ownership of the target is secured, hiding this fact from sys admins becomes paramount, lest they quickly close off the avenue of attack. Clear logs: zap, event log gui Hide tools: rootkits, file streaming

ATS: Redundant services

One method, multiple services which vote for an output, given that non faulty systems can come to a consensus this will work.

CC: VM sec, monitor memory

Only reliable source to know current state of a running computer. Can find, running/killed processes, encrypt keys, network socket data, os level acct info, user input, screen captures, more...

Dos: Syn cookies

Only used during dos attack Does not modify TCP Server must reject all tcp options because server discards the syn queue entry

CCSec: Order preserving encryption

Order is leaked as well as frequency of the data (equality of data<->encrypted data)

CC: Security - Privacy

PII: Personal identifiable information. Privacy impact assessment suggested requirements for cloud SLAs (security level agreements). Proof that SLAs have been satisfied. Contingency planning and disaster recovery for cloud, handling compliance. (HIPAA, PCI)

Malw: Packing in-depth

Packing tool is run on compiled binary, each packed binary looks different because different encrypt key is used. Encrypted code looks like data, so any malware analysis will miss it. Server side polymorphism: Malware can constantly update itself, forcing malware defenders to start over their process to understand the malwares behavior.

CC: Monitoring types

Passive monitoring: viewing memory of application vMs from the security tool running on hypervisor without any timing synchronization between the two vms. Active monitoring: viewing memory in an app VM from sec tool in hypervisor with event notification being sent from app VM to sec tool to permit monitoring at relevant times. goal of monitoring: locate valuable data : find critical data structs within the raw memory view for the monitoring task.

Crime: Malware distribution model

Pay per install model

Threat: Certificate authorities

Places that vouch for a website's identity (he is who he says). Any CA can vouch for any website. No central repository of CAs, Don't know who to trust until you see a CA in the wild.

BC: Proof of work

PoW is costly/time consuming to produce, but easy/quick to verify. To earn a coin, miners of bitcoins do not have to complete some of the work in the block. Changing block requires regenerating all successors and redoing the work they contain.

ML: Polymorphism quiz

Polymorphic attack can change its appearance with every instance. Polymorphic attack has no predictable signature for the attack. Each instance of polymorphic code does not havae a different or normal appearance.

Pen: Attacks

Popup window: Popup window that looks like windows login credentials. IM & IRC: Imitate technical support desk. Redirect users to malicious sites. Trojan horse downloads installs surveillance programs. Email attachments: Malicious software in attachment. Programs can be hidden. Executable pdfs, or confusing .docx.exe files. Email scams: More prevalent over time Request basic information at beginning Leads to financial scams. Chain emails: More of a nuisance than threat Spread using social engineering techniques Productivity and resource cost. Websites: Offer prizes but require a created login. Attacker harvests likely reused credentials/passwords Reuse this information on other websites.

CCSec: Equality preserving encryption

Preserves equality (two equal values which are encrypted are still equal in their encrypted form). Leaks the frequency.

Browser: CSP Content sec policy

Prevent damage of XSS (cross site scripting) Restricts resource loading to a white-list (no dynamic loading). Prohibits inline scripts embedded in script tags, inline event handlers, and javascript, URLs Disable js eval(), new Function() CSP HTTP header allows site to create whitelist, instructs the browser to only execute or render resources from those sources.

Session: Logout

Prevent others form abusing content. Steps 1 Delete session token from client 2 mark server side session token as expired on server. many sites do 1 but not 2.. Risky for sites who fall back to http after login. Network sniffers (man in middle) could see cleartext http request and use the session after its expired.

CC: (NIST) Deployment models

Private, cloud Inf. is operated soley for internal org. Cloud inf is shared by several orgs and supports specific community that has shared concerns. Public cloud inf is made available ot public or large industry group. Hybrid is some combination of other three. Common characteristics among the four models. Massive scale, homogeneity, virtualization, resilient computing, low cost software, geographic distribution, service orientation, advanced security technologies.

ML: Polymorphic blending attack quiz

Process should not result in abnormally large attack size. Blending needs to be economical in time and space Attacks don't need to collect a lot of data to learn normal stats.

MbMal: Lifetime of iOS malware

Produce - Distribute - Do Evil - Make profit

CCSec: Encryption Quiz

Property preserving: Encrypted data is in the same order as the plain text Searchable: Encrypted data that can be searched using encrypted keywords, Secure computation: Several parties can compute a function using inputs that are kept private Homomorphic: Computations performed on encrypted data matches the result of the computations on the plaintext. Functional: A secret key that allows someone to learn the function that is being encrypted.

BC: Distributed consensus

Protocol terminates when all correct nodes decide on the same value and value must have been proposed by some correct node. Peer to peer, broadcast transfer to all nodes. Implicit consensus, in each round random node is picked. This node proposes the next block in the chain. Other nodes implicitly accept/reject this block, by either extending it or ignoring it and extending chain from an earlier block. Every block contains hash of the block it extends. So... each node colelcts the new transactions into a block. In each round a random node gets to broadcast its block. Other nodes accept the block only if all transactions in it are valid. Nodes express their acceptance of the block by including its hash in the next block they create.

BC: Incentive

Provide monetary value to nodes that act honestly. OR transaction fees, creator of transaction can have cost.

Pen: Footprinting

Rconnaissance/information gathering: network ip addresses phone#s, namespace acquisition, network tropology. Tools: Open source search: google domain name/admin/ipaddresses: whois, arin Dns zone transfer: nslookup, dig, Sam Spade

Dos: Capability based defense

Receiver can specify what packets they want. Sender requests capability in Syn Packet (which should be rate limited). Receiver responds with capability. Reject packets without valid capability

Dns: Caching

Recods are cached on a local server to save time on DNS lookups. NS records for domains are also cached. Also caches negative results (does not exist). Each record has a TTL to state how long a record can be kept

Botnet: Dns services

Recursive dns monitoring at isp. Analyze dns traffic from internal hosts to a recursive dns server of the network. Detect abnormal patters/growth of populatrity of a domain name, identify botnet c&C domain and bots, Common means of botnet propogation: (worm-like) exploit-based, email-based, and dry-by egg download.

ATS: Defense method, replication

Replicate the data and store at N different servers (shard). Confidentiality is now weaker. Attacker can get data from N servers now. Integrity and availability are better protected. Attacker needs to compromise majority of the N servers to damage integrity and availability.

Https: Whats Encrypted

Request URL Query params Headers Cookies NOT: host address, port numbers, amount of data, length of session.

Dos: Route Hijacking

Rerouting traffic to prevent site from getting traffic

Dns: Query/response

Response contains IP addresses of next NS server (called "glue"). Response contains series of records. Final authoritative result contians the ip address of the requested domain (or verifies it doesn't exist).

Crime: Exploit devs

Reverse engineer software, find exploits, bugs that can be exploited. Sell for profit

Malw: Obfuscation Purposes

Rootkits help hide malware from u sers Thoroughly mapping security sites and honey pots so as to avoid them - Hides from antivirus security Nuance based encryption methods hides malware from reasearchers.

Tcp: BGP Security

Routing information and updates are not authenticated. Someone can lie about a route change and redirect traffic to their own address. This happened in the Youtube-Pakistan mishap. Essentially anyone can hijack route. Each node in the network has information on how to get to any node. Anyone can inject advertisements for arbitrary routes. These false advertisements propagate everywhere. Used for DoS, spam, and eavesdropping. Paths might be changed such that inbound traffic is eavesdropped but outbound traffic is not. So the victim can't see that his inbound packets are being watched.

Browser: Web worker

Run in an isolated thread, loaded from a separate file Has same origin as frame that creates it, but no dom. Communicate using postMessage

CC: Nist RISK

SaaS - Lost control, data sec, data locality risks, unauthorized access, over privileged admin, no accounting & provider support, provider go broke, disaster PaaS - Interop among cloud providers and legacy systems, service provider lock-in, soa related issues, api related issues. IaaS - VM boundaries, trusting vendors security equipment, identification of data sources, vm security, vm images repository, hypervisor security.

Browser: Sandbox

Safely execute javascript code provided by remote website. No direct file system access, limited access to os network, browser data, content that came from other websites. Same origin policy: Active code can only read properties from same origin. Users can grant privileges to signed scripts (microsoft/google/apple scripts). Data not saved is lost when app closes. Lightweight easy to set up. Changes not visible beyond boundaires VM: Changes not visible beyond boundaires Machine within machine Disk space must be allocated.

Crime: Phishers

Scam sites to steal information. Work with spammers to spread attack

Botnet: Bothunter SCADE

Scan detection: inbound scan Uses different weights for different types of scanning. Also cans outbound scans

Threat: Attacker intelligence

Scanning: Attacker uses the internet to obtain information on specific ip addresses. The kind of information gathered is: OS, services, and architecture of the target system Footprinting: The attacker gathers information about a target. The kind of information gathered is DNS, email, servers, and the ip address range. Enumeration: The attacker gathers information on network user and group names, routing tables and simple network management protocol.

BC: Scrooge core problem

Scrooge has all the power, could require payment to publish transaction. We desire: single published blockchain with a history of all transactions. Agreement on which transactions are valid. Which transactions have occurred. Decentralized id assignment Decentralized mining of new coins.

CC: SIM Design

Security isolation by separating paged virtual address space. We run the sec tool on the same VM, but create virtual address spaces to provide security but keep the speed. SIM much faster than out of vm approach

BC: Cryptocurrency quiz

Security of crypto currency ledgers depends on the honesty of its miners. Most cryptocurrencies are not designed to maintain production to keep inflation in check. Cryptocurrencies are psuedo anonymous and less susceptible to law enforcement seizure.

Crime: Counterfeiters

Sell fake goods Must be able to clear credit cards.

Dos: Amplification Bug Flood

Send a few packets and get a big result. For example sending a small request packet and requiring a big response. Spoof the destination IP and now you've got a ton of data heading to somewhere. Take advantage of bug in the system to take down the system Command botnet to generate flood of requests.

Dos: Reflector

Send spoofed request to some service (such as DNS), the DNS sends not spoofed authentic (it thinks) response to the victim (which ends up flooding the victim). A traceback shows the traffic coming from the DNS servers but stops there because that is where the traffic originated (the service probably wont store where it actually got the request from).

Threat: Zmap packet transmission

Sends all packets at ethernet layer. No correlation between how fast we scan and the hit rate of a scan attempt. Slower scanning does not reveal additional hosts. Coverage: The more packets we send, since some fail, the more likely we are to receive a response from a host if indeed one exists. So we expect a platue where at some point sending more packets returns practically the same number of hosts and provides no additional benefit.

Browser: Cookie sec problems

Server does not see all cookie attributes. Cannot see what server set cookie attribute. Malicious site could set session cookie to something else for another site. Network attacker can intercept and re-write https cookies. Path separation of cookies is only done for efficiency (scope), not security. Cookies have no integrity. User can change cookies. Can use cryptographic hashes made by server to ensure cookie has not changed.

Browser: Reading cookies on server

Server only sees cookies in its own scope, ie domain is right for that given site page, and secure if needed. A given site page gets all cookies that meet the minimum specs.

CC: Advantages/Challenges

Shifting public data to an external cloud reduces the exposure of the internal sensitive data. Cloud homogeneity makes security auditing/testing simpler. Clouds enable automated security management. Redundancy /disaster recover. Challenges: Must trust vendors security model. Customer inability to respond to audit findings. Obtaining support for investigations indirect administrator accountability. Propriety implementations can't be examined. Loss of physical control.

CC: cloud service models

Software as a service: provides an application running on cloud. Platform as a service: Consumer created applications using programming langs/tools supported by provider. Infrastructure as a service: Capability provided to consumer to provision processing, storage, networks , and other fundamental computing resources. Examples: SaaS - Knowledge Tree PaaS - Google apps, salesforce IaaS - AWS, Microsoft Azure.

MbMal: Data flows

Sources, Sinks, flows By analyzing the app description we can see that certain types of flows are expected. But by analyzing the actual data flow we can see that other flows occur that are not expected, and this is leakage.

Session: Http referrer header

States where the last site you were was (before coming here) This could leak url session tokens to third parties. Must supress url referral.

Malw: Analysis defenses

Static analysis was fought with polymorphism/metamorphism/packing/opaque predicates/anti-disassembly, which researchers fought back with dynamic malware analysis, which was fought with trigger-based behavior (logic bombs, time bombs, anti-debugging, anti-emulation, etc) which was fought with dynamic multipath exploration/forced execution.

Pen: Pilfering

Steal valuable information. Further Gather info to allow access to trusted systems. So you can further exploit a system. Evaluate trusts: rhosts Search for cleartext passwords: user data, configuration files, registry

Pen: Pen testing methodology

Steps from first to last Footprinting: General information about network Scanning: Finding more detailed information about network (services available) Enumeration: Finds more targeting information such as user accounts Gaining access: Finds vulnerabilities associated with network services, then exploits Escalating privilege: Get root or sudo access Pilfering: Steal information from network Covering tracks: Hide evidence of breakin so its hard to find out network was compromised Create backdoors: Easy access for future malicious activities. (Loops back to gaining access).

Browser: Cookie types

Super: cookie with origin of top-level domain Zombie: cookie that is regenerated after its deleted SameSite: can only be sent in requests originating from same origin as target domain HttpOnly: Cannot be accessed by client-side APIs Third-party: Belongs to domain that is different from one shown in address bar Session: In-memory cookie. Does not have expiration date, deleted when browser is closed Persistent: Has expiration date. AKA tracking cookies Secure: Only transmitted over an encrypted connection.

Browser: Cross origin resource sharing (CORS)

Technique for relaxing the same-origin policy, allowing js on a webpage to consume content from a different origin. A website whitelists domains

Dos: Link testing

Test upstream links to see where attack is coming from. Attacker could change behavior or attack intermittently. Must determine common part of packet and use that to determine where traffic is coming from at each router. Requires cooperation of multiple ISPs when the attack crosses isp boundaries. Try flooding a link and repeat until you find which upstream link attack is coming from, then repeat at the next upstream set of links. All link testing only work while the attack is in progress.

ML: Polygraph

The flow classification technique was not specified. Signature generation for polymorphic worms. Authors assumed that flow was not perfect and noise could be stored in the suspicious pool. CLaimed that Even with noise, it generates good signatures. Flows get classified into suspicious flows and innocuous flows. Conjunction and token-subsequences are not resilient to noise in the suspicious flow pool. Before creating ML signatures, it ran clustering, so it took out all the fake flows and created a model specifically for them. This can be fooled by creating pieces of data that are consistent between the worm and fake anomalous flow. this way clustering puts them together because they seem more similar. Also uses a bayesian model to detect worms. Defeat this by Injecting normal substrings into fake anomalous flows so that polygraph cannot find a good threshold. No good way to filter noise and prevent data poisoning.

DA: Axis attribute

The most important attribute, eg service. Patters must contain axis attribute values. So we can eliminate associations to non-essential attributes. Compute sequential patterns in two phases, associations using the axis attributes, sequential patterns from the associations.

DA: Reference attributes

The reference subject of a sequence of related actions, eg, connections to the same destination host.

Botnet: Apt quiz

The wost quiz ever. https://youtu.be/DBukHMJzO8g Which info should be considered in order to identify source of an apt attack: source ip of tcp-based attacks packets. coding style of malware, inclusion of special libraries with known authors, motives of the attack, language encoding.

DA: Considerations for selecting a dataset for training (quiz)

There is no perfect way of labeleing data, therefore there is no perfect IDS dataset. Selecting a correct baseline dataset for your network. Selecting a dataset that has a range of intrusion attacks.

Malw: Analysis

Understand malware behavior - Network/host level detection/blocking - Threat analysis Malware can change its behavior if it detects its being observed. Need transparency to the malware. Malware analyzer should be at a higher priviledge level than the malware. No non-priveleged side effects. Same instruction execution semantics, exception handling, notion of time as if analyzer not present. In-Guest Tools have no higher privilege, non-privileged side effects, and exception handling issues. Reduced privilege guests (VMWARE) non privileged side effects. Emulation (QEMU, SIMICS) No identical instruction execution semantics.

Botnet: Use of Dynamic DNS

Use dyn dns so that they can change the C&C server at any time. Can detect anomolies such as the site not showing up on google search but the botnets can get it. Can have isps disable the site.

ML: Countermeasures to poly blend attacks

Use more complex models which use syntax/meanings of web contents instead of just statistics. Use multiple simple IDS. Use randomness in IDS model.

DA: Feature Construction Problem

Use temporal/statistical patterns, (lots of S0 connections to same service/host within short time window).

Dns: Vulnerability

User/host must trust the host-address mapping given by dns. Used for many security policies such as same origin policy. Interception of requests or compromise of dns servers can result in malicious responses. Can use cryptography to prevent this. DNSsec is an example solution.

Pen: Social engineering

Users are weakest link in security. How vulnerable is the user population? which are more vulnerable than others? Find policy gaps/ fix / create new policies Users can be manipulated to undermining their own security system. Abuses the trusted relationships between employees. Very cheap for the attacker. Attacker does not need any specialized tools/skills/equipment.

Dns: Packets

Usual IP and UDP header. Payload is dns data: contains query id Response to packet has the same query id. RD - recursion desired - do recursive lookups on my behalf OP=0 - standard query QR=0 - this is a query QR=1 - this is a response AA=0 - not authoritative - I don't know the ip adress, but here is someone who should. AA=1 - authoritative - here is the thing you asked for. RA=0 - recursion unavailable - i'm not going to continue looking for your, here are your results.

Botnet: Domain used for C&C

Usually domains are bought in chunks so that the attacker can reduce leaving financial information about who he is. DNS lookup behavior of botnets: Bots lookup C&C as soon as they boot/get internet. huge spike in dns requests because of time zones (9am to 5pm). NOrmal dns lookup behavior is a lot smoother, humans dont immediately go tto the same site. Source ip dispersion in DNS lookups (local or global popularity of the domain), distributed in many networks, and ip changes a number of times.

CC: Virtualization quiz

Virtualization requires at least one instance of application or resource thats shared by different organizations. Sharing between organizations is accomplished by assigning a logical name to the resource and then giving each request a pointer to the resource. Virtualization involves creating a virtual machine using existing hardware and operating systems. The virtual machine is logically isolated from the host hardware. Type 1 hypervisor, does not have host operating system because they are installed on a bare system. Type 2 hypervisor, emulates the devices with which a system normally interacts.

CC: Foundational elements

Virtualization, grid technology, service oriented architectures, distributed computing, broadband networks, browser as a platform, free and open source software.

Pen: create backdoors

Want subsequent access to be easy. Layout backdoors in various parts of the system to ensure that privilege access is easily regained whenever the intruder decides to return. Make these doors to make the activity look normal and inconspicuous Create rogue user accounts: schedule batch jobs: infect startup files: plant remote control services: install monitoring mechanism: replace apps with trojan:

BC: Digital signatures

We want signatures from owner only, but anyone can verify. Signature is tied to a particular document and can't be cut-pasted to another document. Signature has private signing key, and public verification key. Can use the public key as an identity. Identities are called addresses in bitcoin.

Browser: Threat model

Web sec threat model Attacker sets up malicious website. Waits for users to visit site. Attacker does not control the network. Network security threat model: Attacker intercepts and controls the network. Could intercept data, man in middle. Inject malicious traffic.

Crime: Pay per install Doorway page Crypters Blackhat search engine optimizer Trojan download manager

Webpage lists many keywords hoping search engine lists this as result, but scripts redirect to compromised pages. Hides malicious code from anti-virus software increases traffic to attackers site by manipulating search engines. Allows attacker to upload or install malware on victim computer

Botnet: detection quiz

What behaviors would indicate a botnet. LInking to established c&C server, generating internet relay chat (IRC) traffic using a specific port range, (generating dns requests is not a good indicator), generating smtp emails/traffic, reducing workstation performance/internet access to the level that it is noticeable to users.

Botnet: Botminer

What can botnets do to evade c-plane clustering - Manipulate communication patterns, introduce noise in the form of random packets to reduce similarity between c&c flows. What can botnets do to evade a-plane monitoring? - Perform slow spamming, use undetectable activies (spam sent with gmail, download exe from https server).

Pen: When should I penetration test

When infrastructure is changed applications are changed end-user policies are changed security patches installed.

Threat: Public key sharing

When a public key is comprised of n = p * q, if p is shared between machines, (but q is different), it becomes very easy to compute the GCD of two different machines to come up with p, and then you can calculate the private key very easily, computing the GCD is trivial. Many embedded systems don't have access to a realtime clock or other sources of randomness. So the randomness is a deterministic type of randomness. Urandom may be predictable for a short time after boot.

ML: Noise Injection attack

Worm regularly sends out worm traffic to spread, but it also sends out fake anomalous flows (can be benign, but looks like a worm). The fake data makes it difficult for the ML algo to find the real signatures or has difficulty generating good signatures. This affects all traffic based flow classifiers.

Browser: Browsing context

a frame with its dom a web worker (thread), which does not have a dom browsing context separated by same-origin policy. can call postmessage to intercommunicate.

Botnet: DNS names

botnet domains typically have random domain strings. Sensible/real domain names have been registered for legitimate use. Look for growth of these suspicious domains.

CC: cloud computing

convenient, on-demand shared configurable resources that can be rapidly provisioned and released with minimal management effort or service provider interaction.

BC: Cryptocurrency Create coin

create a coin string based on a unique coin id. Computes signature of the coin using private key. String together with signature is a coin. Anyone can verify that the coin is valid by decrypting the signature with the public key (which is the identity of the person who owns the key).

BC: Wallet quiz

hot wallet is connected to internet cold wallet is offline desktop wallet is used on laptops or pcs mobile wallets are qr code capable with instant payments online wallets provided on the cloud hardware wallet: developers make use of top grade cryptography.

Pen: Persistence

install backdoor or malware to create Permanent foothold in network malware placed in specific place. Insertion of proxies or man in middle systems to record/listen Can capture user creditials and valuable information Can move all this around to different users to hide tracks.

CC: Platform virtualization

key is the hypervisor or vm monitor. Enables guest oS to run in isolation of other OSs. Run multiple types of OSs. Increases utilization of physical servers, enables portability of virtual servers between physical servers. Increases security of physical host server.

Browser: Same origin policy (SOP)

protocol://domain:port/path?params SOP for DOM: A can access origin B's DOM if A and B ave the same protocol domain and port SOP for cookies: Generally based on protocol domain and path, protocol is optional.

Crime: Exploits as service

some people develop exploits, others buy and use them. Can buy an eploit kit and deploy themselves or can rent access to exploit servers that hosts exploit kits. Spam/phishing to attract traffic to exploit server to get malware installed. Pay per install is a variant where you bundle a traffic acquisition system and exploit server, and you pay per install.

Session: Session token

token must be stored somewhere Tokens expire, but there should be a way to revoke them if needed. token size is a concern.

Botnet: bot hunter

vertical dialog correlation Correlates multiple events that belong to lifecycle of a bot. Scan network, send exploit, egg download (malware download), IRC (connect to c&c) -> more scanning to compromise more systems. Egress point (internal - external), search for duplex comm sequences that map to infection lifecycle model, stimulus does not require strict ordering, but does require temporal locality. Dialog based correlation - Probability that a host is a bot increases as more suspicious events occur during a given time period, (some events are more heavily weighted)


Set pelajaran terkait

Jáma a kyvadlo a jiné povídky

View Set

Interpersonal Communication-Final

View Set

Renal & Urinary - Adult Health - NCLEX

View Set

HESI Prep Pregnancy, Labor, Childbirth, Postpartum-uncomplicated

View Set

Tu vas y passer combien de temps?

View Set