<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://homeostasis.scs.carleton.ca/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Colin</id>
	<title>Soma-notes - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://homeostasis.scs.carleton.ca/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Colin"/>
	<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php/Special:Contributions/Colin"/>
	<updated>2026-05-13T16:03:49Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=CCS2011:_Enemy_of_the_Good&amp;diff=8492</id>
		<title>CCS2011: Enemy of the Good</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=CCS2011:_Enemy_of_the_Good&amp;diff=8492"/>
		<updated>2011-03-13T21:58:30Z</updated>

		<summary type="html">&lt;p&gt;Colin: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=ToDo=&lt;br /&gt;
&lt;br /&gt;
* Gather data from different IDS observables to show they aren&#039;t Gaussian&lt;br /&gt;
** system calls (Luc)&lt;br /&gt;
** network traffic&lt;br /&gt;
** log files&lt;br /&gt;
* Machine learning&lt;br /&gt;
** standard machine learning methods approximate distributions&lt;br /&gt;
** approximation works best if Gaussian but has limits (show mathematically)&lt;br /&gt;
** non-Gaussian distributions place much harsher restrictions on error rates, they don&#039;t go down proportionally to sample size? (more math)&lt;br /&gt;
* [[Survey of results in IDS literature]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Title=&lt;br /&gt;
&lt;br /&gt;
The Enemy of the Good: Re-evaluating Research Directions in Intrusion Detection&lt;br /&gt;
&lt;br /&gt;
=Abstract=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
* For IDS to work, we need very accurate detectors&lt;br /&gt;
** base rate fallacy&lt;br /&gt;
** specifically, very low false alarm rates&lt;br /&gt;
* To date, nobody has achieved sufficiently low false alarm rates to be universally applicable&lt;br /&gt;
** signature and spec methods can be ad-hoc tuned to be good enough but then have poor coverage of new attacks&lt;br /&gt;
** adaptive methods cannot be sufficiently tuned&lt;br /&gt;
* We argue that we can&#039;t get low enough false alarm rates, that there are fundamental limits on IDS performance due to the underlying distributions of legitimate and attacker behavior.&lt;br /&gt;
* Reasons:&lt;br /&gt;
** legit behavior is non-Gaussian, largely power-law like, meaning they have fat tails&lt;br /&gt;
** attacker behavior cannot be sampled sufficiently to learn distribution&lt;br /&gt;
** and besides, attacker behavior keeps changing to follow new attack innovations (more like spread of disease than Gaussian, fundamentally not stationary) and to behave more like legitimate behavior to avoid defenders&lt;br /&gt;
** if we could get good samples of both classes, we might be able to separate them; but instead we must do one-class learning and one-class learning cannot deal well with very long tails.&lt;br /&gt;
** &amp;quot;adaptive concept drift&amp;quot;&lt;br /&gt;
&lt;br /&gt;
IDS Requirements&lt;br /&gt;
&lt;br /&gt;
* scalability in false alarms&lt;br /&gt;
* detect wide range of attacks&lt;br /&gt;
** realistically won&#039;t catch all attacks, but should go significantly beyond &amp;quot;just what I&#039;ve seen&amp;quot; (otherwise cannot address attacker innovation)&lt;br /&gt;
* low resource usage (network, CPU, storage/IO, user, administrator)&lt;br /&gt;
* Stated this way, looks like a ML problem&lt;br /&gt;
&lt;br /&gt;
Machine Learning&lt;br /&gt;
* many, many techniques&lt;br /&gt;
* basic idea: combine a-priori knowledge built into learning method with observations to create classification model&lt;br /&gt;
* IDS is a binary classification problem&lt;br /&gt;
* most accurate methods require representative set of each class&lt;br /&gt;
* if not both, need at least one representative set&lt;br /&gt;
* to do this, data should have certain characteristics&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Legitimate behavior&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
**Classifier technology and the illusion of progress[http://arxiv.org/pdf/math.ST/0606441]&lt;br /&gt;
&lt;br /&gt;
Sections:&lt;br /&gt;
* Problem&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Best case scenario: credit card fraud detection&lt;br /&gt;
* Two class learning is possible&lt;br /&gt;
* Relatively low rate of data&lt;br /&gt;
* Still has persistent false positives _and_ false negatives&lt;br /&gt;
&lt;br /&gt;
===Limits of ML===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;Objective&amp;lt;/i&amp;gt;: Argue that, while there are still improvements to be made in ML algorithm development and refinement, both the &amp;quot;law of diminishing returns&amp;quot;, and the challenging data realities implicit in IDS indicated our efforts should be refocused. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;Question&amp;lt;/i&amp;gt;: Do researchers still attempt to apply binary classifiers to IDS?&lt;br /&gt;
* If this is the case, and, perhaps, regardless, the ML section can be structured as follows:&lt;br /&gt;
&lt;br /&gt;
ML Section&lt;br /&gt;
*Overview of binary and one-class classification&lt;br /&gt;
**Discrimination based approach versus a recognition based approach&lt;br /&gt;
**The type of results produced&lt;br /&gt;
***One-class: Helicopter gearbox, breast cancer mammogram, continuous typist recognition, &amp;lt;i&amp;gt;etc.&amp;lt;/i&amp;gt;  Conceptually these all seem approximately Gaussian, and good results were achieved.&lt;br /&gt;
**What are the data requirements need in order to achieve these results&lt;br /&gt;
***For binary: assume a representative set of data has been drawn from class &amp;amp;omega;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; and &amp;amp;omega;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;. The distributions are generally assumed to be stationary, if not, extra consideration has to be given. With these assumptions, we theoretically expect that the degree to which class &amp;amp;omega;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; and class &amp;amp;omega;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; overlap will define the minimum error threshold.&lt;br /&gt;
*** Based on the fact that neither user behaviour nor attacker behaviour is stationary, and the fact that acquiring a representative set of, even historic, attacker data is extremely challenging (to put it mildly),  the notion of building a necessarily accurate model based on the binary classification paradigm is a formidable one.&lt;br /&gt;
***For one-class: assume a representative set of data has been drawn from class &amp;amp;omega;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, and, as a result, the distribution can be generalized to a level of accuracy necessary for the model to achieve an acceptably low error rate in future application. Assuming the classes are generally separable, this can be done for parametric distributions, such as Gaussian, and non-parametric distributions, provided they are devoid of a “fat tail”.&lt;br /&gt;
**Law of Diminishing Returns&lt;br /&gt;
***discussion based on hand&lt;br /&gt;
*Conclusion&lt;br /&gt;
**For these reasons, and those articulated in the remained of this paper, we believe that the prudent next step in IDS research is a thorough examination of novel techniques for dealing with current degree of FP. More specifically, this thesis arises from the fact that it is clear that the added benefit of the increasingly sophisticated ML algorithms is diminishing, and that, to some degree, FP are, and will remain, a fact of life in IDS.&lt;br /&gt;
&lt;br /&gt;
=What Goes Wrong=&lt;br /&gt;
&lt;br /&gt;
* Poor results&lt;br /&gt;
** datasets do not represent real-world usage or scenarios accurately&lt;br /&gt;
** insufficient or misleading tests of false positive rates&lt;br /&gt;
** Even when rates are accurate, they are misinterpreted: high FP rates are not considered to be high (wrong time scale, lack of attention to scalability)&lt;br /&gt;
** misleading integration of attacks into legitimate behavior&lt;br /&gt;
* Administrative overhead&lt;br /&gt;
** rules that can only be created by experts, but system requires end users to create custom rules&lt;br /&gt;
** experts required to interpret output&lt;br /&gt;
** insufficient context for even experts to interpret output&lt;br /&gt;
** assumption of existence of security personnel that won&#039;t even exist in many important contexts&lt;br /&gt;
* Computational overhead&lt;br /&gt;
** can system keep up with normal workloads?&lt;br /&gt;
** can system keep up with attacker-generated workloads?&lt;br /&gt;
* Anomalies versus attacks&lt;br /&gt;
** why is one a good proxy for the other?&lt;br /&gt;
** why is chosen feature(s) particularly good at detecting attacks?&lt;br /&gt;
* Out of the box algorithms applied w/o understanding security problem&lt;br /&gt;
* Attacker evasion: how can attacker manipulate system?  Can system lead to environment that is easier to attack?&lt;br /&gt;
&lt;br /&gt;
=Discussion=&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
=References=&lt;/div&gt;</summary>
		<author><name>Colin</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=CCS2011:_Enemy_of_the_Good&amp;diff=7525</id>
		<title>CCS2011: Enemy of the Good</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=CCS2011:_Enemy_of_the_Good&amp;diff=7525"/>
		<updated>2011-02-28T14:45:46Z</updated>

		<summary type="html">&lt;p&gt;Colin: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Title=&lt;br /&gt;
&lt;br /&gt;
How to Evaluate Intrusion Detection Systems&lt;br /&gt;
&lt;br /&gt;
=Abstract=&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
* Evaluating non-adaptive IDSs (signature, specification) is like evaluating a programming language&lt;br /&gt;
** quality of individual solutions does not indicate quality of framework&lt;br /&gt;
** quality over all solutions might say something, but that is very hard to measure&lt;br /&gt;
&lt;br /&gt;
* Adaptive IDSs has been seen as a machine learning problem, but it really isn&#039;t.&lt;br /&gt;
* Multiple papers criticizing specific ML approaches to IDS [CITES]&lt;br /&gt;
* Problem is general&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Why?&lt;br /&gt;
**Classifier technology and the illusion of progress[http://arxiv.org/pdf/math.ST/0606441]&lt;br /&gt;
&lt;br /&gt;
Sections:&lt;br /&gt;
* Problem&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=What Goes Wrong=&lt;br /&gt;
&lt;br /&gt;
* Poor results&lt;br /&gt;
** datasets do not represent real-world usage or scenarios accurately&lt;br /&gt;
** insufficient or misleading tests of false positive rates&lt;br /&gt;
** Even when rates are accurate, they are misinterpreted: high FP rates are not considered to be high (wrong time scale, lack of attention to scalability)&lt;br /&gt;
** misleading integration of attacks into legitimate behavior&lt;br /&gt;
* Administrative overhead&lt;br /&gt;
** rules that can only be created by experts, but system requires end users to create custom rules&lt;br /&gt;
** experts required to interpret output&lt;br /&gt;
** insufficient context for even experts to interpret output&lt;br /&gt;
** assumption of existence of security personnel that won&#039;t even exist in many important contexts&lt;br /&gt;
* Computational overhead&lt;br /&gt;
** can system keep up with normal workloads?&lt;br /&gt;
** can system keep up with attacker-generated workloads?&lt;br /&gt;
* Anomalies versus attacks&lt;br /&gt;
** why is one a good proxy for the other?&lt;br /&gt;
** why is chosen feature(s) particularly good at detecting attacks?&lt;br /&gt;
* Out of the box algorithms applied w/o understanding security problem&lt;br /&gt;
* Attacker evasion: how can attacker manipulate system?  Can system lead to environment that is easier to attack?&lt;br /&gt;
&lt;br /&gt;
=Discussion=&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
=References=&lt;/div&gt;</summary>
		<author><name>Colin</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=CCS2011:_Enemy_of_the_Good&amp;diff=7524</id>
		<title>CCS2011: Enemy of the Good</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=CCS2011:_Enemy_of_the_Good&amp;diff=7524"/>
		<updated>2011-02-28T14:45:10Z</updated>

		<summary type="html">&lt;p&gt;Colin: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Title=&lt;br /&gt;
&lt;br /&gt;
How to Evaluate Intrusion Detection Systems&lt;br /&gt;
&lt;br /&gt;
=Abstract=&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
* Evaluating non-adaptive IDSs (signature, specification) is like evaluating a programming language&lt;br /&gt;
** quality of individual solutions does not indicate quality of framework&lt;br /&gt;
** quality over all solutions might say something, but that is very hard to measure&lt;br /&gt;
&lt;br /&gt;
* Adaptive IDSs has been seen as a machine learning problem, but it really isn&#039;t.&lt;br /&gt;
* Multiple papers criticizing specific ML approaches to IDS [CITES]&lt;br /&gt;
* Problem is general&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Why?&lt;br /&gt;
**[http://arxiv.org/pdf/math.ST/0606441]&lt;br /&gt;
&lt;br /&gt;
Sections:&lt;br /&gt;
* Problem&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=What Goes Wrong=&lt;br /&gt;
&lt;br /&gt;
* Poor results&lt;br /&gt;
** datasets do not represent real-world usage or scenarios accurately&lt;br /&gt;
** insufficient or misleading tests of false positive rates&lt;br /&gt;
** Even when rates are accurate, they are misinterpreted: high FP rates are not considered to be high (wrong time scale, lack of attention to scalability)&lt;br /&gt;
** misleading integration of attacks into legitimate behavior&lt;br /&gt;
* Administrative overhead&lt;br /&gt;
** rules that can only be created by experts, but system requires end users to create custom rules&lt;br /&gt;
** experts required to interpret output&lt;br /&gt;
** insufficient context for even experts to interpret output&lt;br /&gt;
** assumption of existence of security personnel that won&#039;t even exist in many important contexts&lt;br /&gt;
* Computational overhead&lt;br /&gt;
** can system keep up with normal workloads?&lt;br /&gt;
** can system keep up with attacker-generated workloads?&lt;br /&gt;
* Anomalies versus attacks&lt;br /&gt;
** why is one a good proxy for the other?&lt;br /&gt;
** why is chosen feature(s) particularly good at detecting attacks?&lt;br /&gt;
* Out of the box algorithms applied w/o understanding security problem&lt;br /&gt;
* Attacker evasion: how can attacker manipulate system?  Can system lead to environment that is easier to attack?&lt;br /&gt;
&lt;br /&gt;
=Discussion=&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
=References=&lt;/div&gt;</summary>
		<author><name>Colin</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Intrusion_Detection:_Winter_2011_(COMP_5900X)&amp;diff=7183</id>
		<title>Intrusion Detection: Winter 2011 (COMP 5900X)</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Intrusion_Detection:_Winter_2011_(COMP_5900X)&amp;diff=7183"/>
		<updated>2011-01-28T16:08:25Z</updated>

		<summary type="html">&lt;p&gt;Colin: /* inMobi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Readings=&lt;br /&gt;
&lt;br /&gt;
Note that many PDF links are via the Carleton University Library&#039;s proxy; to access these you need your Carleton ID number and library PIN.  However, if you have trouble accessing them, try doing a search on the authors and titles; the same PDFs are generally also available from other websites.&lt;br /&gt;
&lt;br /&gt;
===January 25, 2011===&lt;br /&gt;
* Anderson (1980), [http://csrc.nist.gov/publications/history/#ande80 Computer Security Threat Monitoring and Surveillance]. ([[http://csrc.nist.gov/publications/history/ande80.pdf PDF])&lt;br /&gt;
* Denning (1986), [http://dx.doi.org/10.1109/TSE.1987.232894 An Intrusion Detection Model].  ([http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=1702202 PDF]) &lt;br /&gt;
&lt;br /&gt;
===January 27, 2011===&lt;br /&gt;
* Smaha (1988), [http://dx.doi.org/10.1109/ACSAC.1988.113412 Haystack: An Intrusion Detection System]. ([http://ieeexplore.ieee.org.proxy.library.carleton.ca/xpls/abs_all.jsp?arnumber=113412 PDF]) &lt;br /&gt;
* Vaccaro &amp;amp;amp; Liepins (1989), [http://dx.doi.org/10.1109/SECPRI.1989.36302 Detection of Anomalous Computer Session Activity]. ([http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=36302 PDF])&lt;br /&gt;
&lt;br /&gt;
=Research=&lt;br /&gt;
&lt;br /&gt;
==Android advertisement services==&lt;br /&gt;
&lt;br /&gt;
===Google Adwords===&lt;br /&gt;
AdSense:&lt;br /&gt;
- Advertising program that&#039;s used by publishers&lt;br /&gt;
- Contexual Advertising (to surrouding context)&lt;br /&gt;
&lt;br /&gt;
AdWords:&lt;br /&gt;
- an ad brokerage system&lt;br /&gt;
- a pay-per-click advertizing program used by Advertisers&lt;br /&gt;
- Advertisers create short, text based ads that are very closely relatated to chosen keywords and then allow those ads to be shown on other people&#039;s web sites that feature the chosen keyword.&lt;br /&gt;
&lt;br /&gt;
Instead of the traditional model of displaying ads on manually chosen sites, AdWords displays the ads according to the content of the hosting web page (“travel,” “new york giants,” “perfume”), and advertisers pay the host each time a user clicks on an ad. Google makes money from the system both by hosting ads on its own search and other sites and by collecting a commission for all ads hosted on other sites.&lt;br /&gt;
&lt;br /&gt;
AdWords consists of 3 main parts: the ranking part that drives its search and ad lists, the terming part that drives its association of ads with content, and the valuing part that drives its valuation of ads.&lt;br /&gt;
&lt;br /&gt;
AdWords technically refers to only one of several sub-systems (the one that attaches the smartertravel.com ad to the word “smart travel”) that constitute the larger AdWords system, along with Google&#039;s search and AdWords ad ranking systems and the AdWords pay-per-click / ad auction payment system.&lt;br /&gt;
&lt;br /&gt;
Publishers get paid by:&lt;br /&gt;
 - Unique visits&lt;br /&gt;
 - Click-through-rate&lt;br /&gt;
 - Avergage cost-per-click&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
A code snippet provided by Google and embedded in the publishers page grabs the Ads off Google&#039;s Ad server.&lt;br /&gt;
A third party Ad server can be used through AdSense.[http://www.google.com/adsense/support/bin/answer.py?hl=en&amp;amp;answer=94145&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
&amp;quot;How will Google prevent malware from third-party ads?&lt;br /&gt;
&lt;br /&gt;
Google is actively working with trusted advertisers and partners to reduce the risk of malware. We specifically forbid fourth-party calls or sub-syndication to advertisers or vendors we haven&#039;t certified.&lt;br /&gt;
&lt;br /&gt;
Also, all third-party ads are checked for malware when they&#039;re initially entered into our system. Google also employs an automated malware checker that continuously scans all third-party creatives running through the network. Any ad with malware will be automatically pulled from the network to protect our partner websites and their users.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&#039;&#039;&#039;Maleware exploits (Google recommended)&#039;&#039;&#039;&lt;br /&gt;
[http://www.provos.org/index.php?/categories/6-Malware]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Google online security blog&#039;&#039;&#039;&lt;br /&gt;
[http://googleonlinesecurity.blogspot.com/]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The Ghost In The Browser, Analysis of web-based Malware.&#039;&#039;&#039;[http://www.usenix.org/event/hotbots07/tech/full_papers/provos/provos.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;BotHunter: Detecting Malware Infection Through IDS-Driven Dialog Correlation&#039;&#039;&#039;.[http://www.usenix.org/events/sec07/tech/full_papers/gu/gu.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Effective and Efficient Malware Detection at the End Host&#039;&#039;&#039;.[http://www.usenix.org/events/sec09/tech/full_papers/kolbitsch.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Malware Characterization through Alert Pattern Discovery&#039;&#039;&#039;.[http://www.usenix.org/event/leet09/tech/full_papers/cheung/cheung.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;A View on Current Malware Behaviors&#039;&#039;&#039;.[http://www.usenix.org/event/leet09/tech/full_papers/bayer/bayer.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Automatic Generation of Remediation Procedures for Malware Infections&#039;&#039;&#039;.[http://www.usenix.org/events/sec10/tech/full_papers/Paleari.pdf]&lt;br /&gt;
----&lt;br /&gt;
Very good paper with a wealth of technical infromation on how AdWords works:&lt;br /&gt;
&#039;&#039;&#039;Google AdWords as a Network of Grey Surveillance&#039;&#039;&#039;&lt;br /&gt;
[http://scholar.lib.vt.edu/theses/available/etd-02082010-004431/unrestricted/Roberts_HM_T_2010.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Google Display Network&#039;&#039;&#039;&lt;br /&gt;
[http://www.google.com/adwords/displaynetwork/]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AdSense for mobile content&#039;&#039;&#039;&lt;br /&gt;
[http://www.google.com/adsense/support/bin/topic.py?hl=en&amp;amp;topic=11951]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Admob====&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;AdMob is a mobile advertising company founded by Omar Hamoui. It was incorporated in 2006 and is based in San Mateo, California. In November 2009 it was acquired by Google for $750 million. The acquisition was completed on May 27, 2010. Apple Inc. had also expressed interest in purchasing the company the same year, but they were out-bid by Google, and have since introduced their own iAd advertising platform.[6] Prior to being acquired by Google, AdMob acquired the company AdWhirl, formerly Adrollo, which is a platform for developing advertisements in iPhone applications. AdMob offers advertising solutions for many mobile platforms, including Android, iOS, webOS, Flash Lite, and all standard mobile web browsers.&lt;br /&gt;
&lt;br /&gt;
AdMob is one of the world&#039;s largest mobile advertising platforms and claims to serve more than 40 billion mobile banner and text ads per month across mobile Web sites and handset applications&amp;quot; - [http://en.wikipedia.org/wiki/AdMob]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; How to publish an ad for mobile application developers &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 - Create an account on AdMob.&lt;br /&gt;
 - Choose your platform from the list of supported platforms, we will select Android. A screen shot from Admob.com of the list of supported platforms:&lt;br /&gt;
              [[File:platforms.jpg]]&lt;br /&gt;
 - After going through some settings screens , you will be given a publisher ID (for example: a14234a2430bff2).&lt;br /&gt;
 - Make sure that Test mode is enabled. This allows testing ads in a test environment.&lt;br /&gt;
 - You will be asked to download a publisher&#039;s code file.&lt;br /&gt;
 - The Android SDK documentation can be found here: [http://www.admob.com/docs/AdMob_Android_SDK_Instructions.pdf]&lt;br /&gt;
 - Add the jar file to build path of the Android project&lt;br /&gt;
 - Make sure that the application has Internet access permission by modifying the manifest file.&lt;br /&gt;
 - Add Admob activity tags in the application&#039;s manifest file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Supported API Actions when clicking on an in-application Ad:&lt;br /&gt;
&lt;br /&gt;
 - url - (Default) Click-to-Browser for promoting websites&lt;br /&gt;
 - app - Click-to-Market for promoting Android applications&lt;br /&gt;
 - canvas - Click-to-Canvas which is a notice that appears over current screen&lt;br /&gt;
 - call - Click-to-Phone Call&lt;br /&gt;
 - map - Click-to-Google Map&lt;br /&gt;
 - video - Click-to-YouTube &lt;br /&gt;
&lt;br /&gt;
Notes on the decompiled .jar file (information below might now be very accurate):&lt;br /&gt;
&lt;br /&gt;
 - http://r.admob.com/ad_source.php is used to get Ad using an HTTP post&lt;br /&gt;
 - References to JSON object in AdWebView, but not 100% sure if they&#039;re used in the AdView view&lt;br /&gt;
 - Time Delta enforced between refreshes. You can not get a new Ad before a certain number of seconds.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;Wikipage for Admob developers&#039;&#039;&#039;[http://developer.admob.com/wiki/Android]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===WebKit===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;WebKit is an open source web browser engine.&amp;quot; [http://webkit.org/] It is a framework that manages content and presents it on the display of a device.  This gives the app developer control over how content is displayed on a specific platform, instead of placing the onus on the web designer to create platform specific content. &lt;br /&gt;
&lt;br /&gt;
The Android API for WebKit can be found here: [http://developer.android.com/reference/android/webkit/package-summary.html].&lt;br /&gt;
&lt;br /&gt;
Browsing through the API, you will find the web content display is controlled by the WebView class [http://developer.android.com/reference/android/webkit/WebView.html].  Various settings configurable for WebView instances can be controlled through functions provided by the WebSettings class [http://developer.android.com/reference/android/webkit/WebSettings.html].  For example:&lt;br /&gt;
&lt;br /&gt;
  - public void setAllowFileAccess (boolean allow)&lt;br /&gt;
  - public void setAllowFileAccess (boolean allow)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Recent Exploits===&lt;br /&gt;
Just picked this up from slashdot, trojan horse on android! [http://mobile.slashdot.org/story/11/01/20/1534236/Soundminder-Android-Trojan-Hears-Credit-Cards]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===inMobi===&lt;br /&gt;
&lt;br /&gt;
InMobi [http://www.inmobi.com/] claims to be the worlds largest independent ad network, providing solutions for advertisers, producers.&lt;br /&gt;
&lt;br /&gt;
They target the major of platforms, including Android and iPhone&lt;br /&gt;
&lt;br /&gt;
Generally speaking, their ads can take a diverse set forms:&lt;br /&gt;
&lt;br /&gt;
      Full screen&lt;br /&gt;
      Expandable&lt;br /&gt;
      Scrolling &lt;br /&gt;
      Touch to enlarge&lt;br /&gt;
      Rotating&lt;br /&gt;
      Video&lt;br /&gt;
&lt;br /&gt;
      Banners&lt;br /&gt;
      Text characters&lt;br /&gt;
&lt;br /&gt;
      Click to landing page&lt;br /&gt;
      Click to download&lt;br /&gt;
      Click to play video&lt;br /&gt;
      Click to call&lt;br /&gt;
      Click to lead &lt;br /&gt;
      Click to text&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ad Publishers&#039;&#039;– InMobi supplies PHP-CURL, JSP, .NET, RUBY, PERL and ASP code snippets for acquiring ads. Pasting the basic code into a site creates a space for a single ad. In addition, an advanced code library is available for running multiple ads on a page, and/or for specifying parameters such as demographics, language and location.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ad Publishers&#039;&#039; – InMobi provides filtering mechanisms to facilitate the filtering of ad types and/or sources.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Application developers&#039;&#039; – InMobi supplies SDKs for Android and iPhone applications developers.&lt;br /&gt;
&lt;br /&gt;
Further investigation is require in order to understand the specifics of ad development and their integration into web pages and mobile applications. Only superficial details are provided on the InMobi page.&lt;br /&gt;
&lt;br /&gt;
==iOS advertisement services==&lt;br /&gt;
&lt;br /&gt;
===iAds===&lt;br /&gt;
&lt;br /&gt;
This is what I could find so far, please feel free to correct any mistakes - Ben&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
iAd [http://advertising.apple.com/] is an Apple created web advertisement framework integrated to iOS starting with iOS 4.  To embed iAds into an iPhone/iPad app, the programmer can use the Xcode IDE [http://developer.apple.com/technologies/tools/xcode.html] to add &amp;quot;Ad Banners&amp;quot; into their apps.  Some tutorials of adding banners can be found in the following links:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;li&amp;gt;http://bees4honey.com/blog/tutorial/how-to-add-iad-banner-in-iphoneipad-app/&lt;br /&gt;
  &amp;lt;li&amp;gt;http://www.raywenderlich.com/1371/how-to-integrate-iad-into-your-iphone-app&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
iAds are created using web technologies, such as HTML5, CSS, JavaScript, using a tool called iAdProducer [http://developer.apple.com/iad/iadproducer/].  To have advertisements served, the ad creator must join the iAd Network [http://advertising.apple.com/], and submit their ad(s) for review. [http://forums.macrumors.com/showthread.php?t=960117]  The distribution and selection of ads is done by the Apple iAd network, and does not currently support &amp;quot;house ads&amp;quot; (ads where ad author = app developer), but will allow the app developer to &amp;quot;exclude ads from competitors or other unwanted advertisers based on specific keywords, URLs, and application Apple IDs&amp;quot; [http://developer.apple.com/support/ios/iad-network.html#howdoi]&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Google Adwords===&lt;br /&gt;
&lt;br /&gt;
Google AdWords on the iPhone/iPod/iPad is the same service as found on PCs save for minor customizations.  These customziations include targetting ads for the platform [http://www.iphonefootprint.com/2008/12/google-adwords-on-iphone/] in addition to key words, and ensuring results fit on the display [http://www.seroundtable.com/archives/016745.html] of the mobile device.&lt;br /&gt;
&lt;br /&gt;
The rearranging of the ad can be attributed to at least the user-agent (UA) in a web request.  This can be tested with changing the user-agent in the browser of a PC and performing searches on Google.  Instructions on changing the UA for Mozilla Firefox can be found at: http://johnbokma.com/mexit/2004/04/24/changinguseragent.html and iPhone UAs can be found at: http://www.mattcutts.com/blog/iphone-user-agent/&lt;br /&gt;
&lt;br /&gt;
See the AdWords description in the Android section above for a more detailed description.&lt;br /&gt;
&lt;br /&gt;
===inMobi===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===General Interest===&lt;br /&gt;
&lt;br /&gt;
Hey guys, this short article from the BBC is of a general interest nature. However, it does demonstrate the importance of early detection of strange behaviour on smartphones.&lt;br /&gt;
&lt;br /&gt;
http://www.bbc.co.uk/news/technology-12238367&lt;/div&gt;</summary>
		<author><name>Colin</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Intrusion_Detection:_Winter_2011_(COMP_5900X)&amp;diff=7109</id>
		<title>Intrusion Detection: Winter 2011 (COMP 5900X)</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Intrusion_Detection:_Winter_2011_(COMP_5900X)&amp;diff=7109"/>
		<updated>2011-01-20T15:11:41Z</updated>

		<summary type="html">&lt;p&gt;Colin: /* inMobi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Android advertisement services==&lt;br /&gt;
&lt;br /&gt;
===Google Adwords===&lt;br /&gt;
AdSense:&lt;br /&gt;
- Advertising program that&#039;s used by publishers&lt;br /&gt;
- Contexual Advertising (to surrouding context)&lt;br /&gt;
&lt;br /&gt;
AdWords:&lt;br /&gt;
- an ad brokerage system&lt;br /&gt;
- a pay-per-click advertizing program used by Advertisers&lt;br /&gt;
- Advertisers create short, text based ads that are very closely relatated to chosen keywords and then allow those ads to be shown on other people&#039;s web sites that feature the chosen keyword.&lt;br /&gt;
&lt;br /&gt;
Instead of the traditional model of displaying ads on manually chosen sites, AdWords displays the ads according to the content of the hosting web page (“travel,” “new york giants,” “perfume”), and advertisers pay the host each time a user clicks on an ad. Google makes money from the system both by hosting ads on its own search and other sites and by collecting a commission for all ads hosted on other sites.&lt;br /&gt;
&lt;br /&gt;
AdWords consists of 3 main parts: the ranking part that drives its search and ad lists, the terming part that drives its association of ads with content, and the valuing part that drives its valuation of ads.&lt;br /&gt;
&lt;br /&gt;
AdWords technically refers to only one of several sub-systems (the one that attaches the smartertravel.com ad to the word “smart travel”) that constitute the larger AdWords system, along with Google&#039;s search and AdWords ad ranking systems and the AdWords pay-per-click / ad auction payment system.&lt;br /&gt;
&lt;br /&gt;
Publishers get paid by:&lt;br /&gt;
 - Unique visits&lt;br /&gt;
 - Click-through-rate&lt;br /&gt;
 - Avergage cost-per-click&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
A code snippet provided by Google and embedded in the publishers page grabs the Ads off Google&#039;s Ad server.&lt;br /&gt;
A third party Ad server can be used through AdSense.[http://www.google.com/adsense/support/bin/answer.py?hl=en&amp;amp;answer=94145&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
&amp;quot;How will Google prevent malware from third-party ads?&lt;br /&gt;
&lt;br /&gt;
Google is actively working with trusted advertisers and partners to reduce the risk of malware. We specifically forbid fourth-party calls or sub-syndication to advertisers or vendors we haven&#039;t certified.&lt;br /&gt;
&lt;br /&gt;
Also, all third-party ads are checked for malware when they&#039;re initially entered into our system. Google also employs an automated malware checker that continuously scans all third-party creatives running through the network. Any ad with malware will be automatically pulled from the network to protect our partner websites and their users.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&#039;&#039;&#039;Maleware exploits (Google recommended)&#039;&#039;&#039;&lt;br /&gt;
[http://www.provos.org/index.php?/categories/6-Malware]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Google online security blog&#039;&#039;&#039;&lt;br /&gt;
[http://googleonlinesecurity.blogspot.com/]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The Ghost In The Browser, Analysis of web-based Malware.&#039;&#039;&#039;[http://www.usenix.org/event/hotbots07/tech/full_papers/provos/provos.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;BotHunter: Detecting Malware Infection Through IDS-Driven Dialog Correlation&#039;&#039;&#039;.[http://www.usenix.org/events/sec07/tech/full_papers/gu/gu.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Effective and Efficient Malware Detection at the End Host&#039;&#039;&#039;.[http://www.usenix.org/events/sec09/tech/full_papers/kolbitsch.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Malware Characterization through Alert Pattern Discovery&#039;&#039;&#039;.[http://www.usenix.org/event/leet09/tech/full_papers/cheung/cheung.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;A View on Current Malware Behaviors&#039;&#039;&#039;.[http://www.usenix.org/event/leet09/tech/full_papers/bayer/bayer.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Automatic Generation of Remediation Procedures for Malware Infections&#039;&#039;&#039;.[http://www.usenix.org/events/sec10/tech/full_papers/Paleari.pdf]&lt;br /&gt;
----&lt;br /&gt;
Very good paper with a wealth of technical infromation on how AdWords works:&lt;br /&gt;
&#039;&#039;&#039;Google AdWords as a Network of Grey Surveillance&#039;&#039;&#039;&lt;br /&gt;
[http://scholar.lib.vt.edu/theses/available/etd-02082010-004431/unrestricted/Roberts_HM_T_2010.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Google Display Network&#039;&#039;&#039;&lt;br /&gt;
[http://www.google.com/adwords/displaynetwork/]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AdSense for mobile content&#039;&#039;&#039;&lt;br /&gt;
[http://www.google.com/adsense/support/bin/topic.py?hl=en&amp;amp;topic=11951]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Admob====&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;AdMob is a mobile advertising company founded by Omar Hamoui. It was incorporated in 2006 and is based in San Mateo, California. In November 2009 it was acquired by Google for $750 million. The acquisition was completed on May 27, 2010. Apple Inc. had also expressed interest in purchasing the company the same year, but they were out-bid by Google, and have since introduced their own iAd advertising platform.[6] Prior to being acquired by Google, AdMob acquired the company AdWhirl, formerly Adrollo, which is a platform for developing advertisements in iPhone applications. AdMob offers advertising solutions for many mobile platforms, including Android, iOS, webOS, Flash Lite, and all standard mobile web browsers.&lt;br /&gt;
&lt;br /&gt;
AdMob is one of the world&#039;s largest mobile advertising platforms and claims to serve more than 40 billion mobile banner and text ads per month across mobile Web sites and handset applications&amp;quot; - [http://en.wikipedia.org/wiki/AdMob]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; How to publish an ad for mobile application developers &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 - Create an account on AdMob.&lt;br /&gt;
 - Choose your platform from the list of supported platforms, we will select Android. A screen shot from Admob.com of the list of supported platforms:&lt;br /&gt;
              [[File:platforms.jpg]]&lt;br /&gt;
 - After going through some settings screens , you will be given a publisher ID (for example: a14234a2430bff2).&lt;br /&gt;
 - Make sure that Test mode is enabled. This allows testing ads in a test environment.&lt;br /&gt;
 - You will be asked to download a publisher&#039;s code file.&lt;br /&gt;
 - The Android SDK documentation can be found here: [http://www.admob.com/docs/AdMob_Android_SDK_Instructions.pdf]&lt;br /&gt;
 - Add the jar file to build path of the Android project&lt;br /&gt;
 - Make sure that the application has Internet access permission by modifying the manifest file.&lt;br /&gt;
 - Add Admob activity tags in the application&#039;s manifest file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Supported API Actions when clicking on an in-application Ad:&lt;br /&gt;
&lt;br /&gt;
 - url - (Default) Click-to-Browser for promoting websites&lt;br /&gt;
 - app - Click-to-Market for promoting Android applications&lt;br /&gt;
 - canvas - Click-to-Canvas which is a notice that appears over current screen&lt;br /&gt;
 - call - Click-to-Phone Call&lt;br /&gt;
 - map - Click-to-Google Map&lt;br /&gt;
 - video - Click-to-YouTube &lt;br /&gt;
&lt;br /&gt;
Notes on the decompiled .jar file (information below might now be very accurate):&lt;br /&gt;
&lt;br /&gt;
 - http://r.admob.com/ad_source.php is used to get Ad using an HTTP post&lt;br /&gt;
 - References to JSON object in AdWebView, but not 100% sure if they&#039;re used in the AdView view&lt;br /&gt;
 - Time Delta enforced between refreshes. You can not get a new Ad before a certain number of seconds.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;Wikipage for Admob developers&#039;&#039;&#039;[http://developer.admob.com/wiki/Android]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===WebKit===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;WebKit is an open source web browser engine.&amp;quot; [http://webkit.org/] It is a framework that manages content and presents it on the display of a device.  This gives the app developer control over how content is displayed on a specific platform, instead of placing the onus on the web designer to create platform specific content. &lt;br /&gt;
&lt;br /&gt;
The Android API for WebKit can be found here: [http://developer.android.com/reference/android/webkit/package-summary.html].&lt;br /&gt;
&lt;br /&gt;
Browsing through the API, you will find the web content display is controlled by the WebView class [http://developer.android.com/reference/android/webkit/WebView.html].  Various settings configurable for WebView instances can be controlled through functions provided by the WebSettings class [http://developer.android.com/reference/android/webkit/WebSettings.html].  For example:&lt;br /&gt;
&lt;br /&gt;
  - public void setAllowFileAccess (boolean allow)&lt;br /&gt;
  - public void setAllowFileAccess (boolean allow)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===inMobi===&lt;br /&gt;
&lt;br /&gt;
InMobi [http://www.inmobi.com/] claims to be the worlds largest independent ad network, providing solutions for advertisers, producers.&lt;br /&gt;
&lt;br /&gt;
They target the major platforms, including Android and iPhone&lt;br /&gt;
&lt;br /&gt;
Generally speaking, their ads can take a diverse set forms:&lt;br /&gt;
&lt;br /&gt;
      Full screen&lt;br /&gt;
      Expandable&lt;br /&gt;
      Scrolling &lt;br /&gt;
      Touch to enlarge&lt;br /&gt;
      Rotating&lt;br /&gt;
      Video&lt;br /&gt;
&lt;br /&gt;
      Banners&lt;br /&gt;
      Text characters&lt;br /&gt;
&lt;br /&gt;
      Click to landing page&lt;br /&gt;
      Click to download&lt;br /&gt;
      Click to play video&lt;br /&gt;
      Click to call&lt;br /&gt;
      Click to lead &lt;br /&gt;
      Click to text&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ad Publishers&#039;&#039;– InMobi supplies PHP-CURL, JSP, .NET, RUBY, PERL and ASP code snippets for acquiring ads. Pasting the basic code into a site creates a space for a single ad. In addition, an advanced code library is available for running multiple ads on a page, and/or for specifying parameters such as demographics, language and location.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ad Publishers&#039;&#039; – InMobi provides filtering mechanisms to facilitate the filtering of ad types and/or sources.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Application developers&#039;&#039; – InMobi supplies SDKs for Android and iPhone applications developers.&lt;br /&gt;
&lt;br /&gt;
Further investigation is require in order to understand the specifics of ad development and their integration into web pages and mobile applications. Only superficial details are provided on the InMobi page.&lt;br /&gt;
&lt;br /&gt;
==iOS advertisement services==&lt;br /&gt;
&lt;br /&gt;
===iAds===&lt;br /&gt;
&lt;br /&gt;
This is what I could find so far, please feel free to correct any mistakes - Ben&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
iAd [http://advertising.apple.com/] is an Apple created web advertisement framework integrated to iOS starting with iOS 4.  To embed iAds into an iPhone/iPad app, the programmer can use the Xcode IDE [http://developer.apple.com/technologies/tools/xcode.html] to add &amp;quot;Ad Banners&amp;quot; into their apps.  Some tutorials of adding banners can be found in the following links:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;li&amp;gt;http://bees4honey.com/blog/tutorial/how-to-add-iad-banner-in-iphoneipad-app/&lt;br /&gt;
  &amp;lt;li&amp;gt;http://www.raywenderlich.com/1371/how-to-integrate-iad-into-your-iphone-app&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
iAds are created using web technologies, such as HTML5, CSS, JavaScript, using a tool called iAdProducer [http://developer.apple.com/iad/iadproducer/].  To have advertisements served, the ad creator must join the iAd Network [http://advertising.apple.com/], and submit their ad(s) for review. [http://forums.macrumors.com/showthread.php?t=960117]  The distribution and selection of ads is done by the Apple iAd network, and does not currently support &amp;quot;house ads&amp;quot; (ads where ad author = app developer), but will allow the app developer to &amp;quot;exclude ads from competitors or other unwanted advertisers based on specific keywords, URLs, and application Apple IDs&amp;quot; [http://developer.apple.com/support/ios/iad-network.html#howdoi]&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Google Adwords===&lt;br /&gt;
&lt;br /&gt;
Google AdWords on the iPhone/iPod/iPad is the same service as found on PCs save for minor customizations.  These customziations include targetting ads for the platform [http://www.iphonefootprint.com/2008/12/google-adwords-on-iphone/] in addition to key words, and ensuring results fit on the display [http://www.seroundtable.com/archives/016745.html] of the mobile device.&lt;br /&gt;
&lt;br /&gt;
The rearranging of the ad can be attributed to at least the user-agent (UA) in a web request.  This can be tested with changing the user-agent in the browser of a PC and performing searches on Google.  Instructions on changing the UA for Mozilla Firefox can be found at: http://johnbokma.com/mexit/2004/04/24/changinguseragent.html and iPhone UAs can be found at: http://www.mattcutts.com/blog/iphone-user-agent/&lt;br /&gt;
&lt;br /&gt;
See the AdWords description in the Android section above for a more detailed description.&lt;br /&gt;
&lt;br /&gt;
===inMobi===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===General Interest===&lt;br /&gt;
&lt;br /&gt;
Hey guys, this short article from the BBC is of a general interest nature. However, it does demonstrate the importance of early detection of strange behaviour on smartphones.&lt;br /&gt;
&lt;br /&gt;
http://www.bbc.co.uk/news/technology-12238367&lt;/div&gt;</summary>
		<author><name>Colin</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Intrusion_Detection:_Winter_2011_(COMP_5900X)&amp;diff=7017</id>
		<title>Intrusion Detection: Winter 2011 (COMP 5900X)</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Intrusion_Detection:_Winter_2011_(COMP_5900X)&amp;diff=7017"/>
		<updated>2011-01-17T02:59:16Z</updated>

		<summary type="html">&lt;p&gt;Colin: /* inMobi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Android advertisement services==&lt;br /&gt;
&lt;br /&gt;
===Google Adwords===&lt;br /&gt;
AdSense:&lt;br /&gt;
- Advertising program that&#039;s used by publishers&lt;br /&gt;
- Contexual Advertising (to surrouding context)&lt;br /&gt;
&lt;br /&gt;
AdWords:&lt;br /&gt;
- an ad brokerage system&lt;br /&gt;
- a pay-per-click advertizing program used by Advertisers&lt;br /&gt;
- Advertisers create short, text based ads that are very closely relatated to chosen keywords and then allow those ads to be shown on other people&#039;s web sites that feature the chosen keyword.&lt;br /&gt;
&lt;br /&gt;
Instead of the traditional model of displaying ads on manually chosen sites, AdWords displays the ads according to the content of the hosting web page (“travel,” “new york giants,” “perfume”), and advertisers pay the host each time a user clicks on an ad. Google makes money from the system both by hosting ads on its own search and other sites and by collecting a commission for all ads hosted on other sites.&lt;br /&gt;
&lt;br /&gt;
AdWords consists of 3 main parts: the ranking part that drives its search and ad lists, the terming part that drives its association of ads with content, and the valuing part that drives its valuation of ads.&lt;br /&gt;
&lt;br /&gt;
AdWords technically refers to only one of several sub-systems (the one that attaches the smartertravel.com ad to the word “smart travel”) that constitute the larger AdWords system, along with Google&#039;s search and AdWords ad ranking systems and the AdWords pay-per-click / ad auction payment system.&lt;br /&gt;
&lt;br /&gt;
Publishers get paid by:&lt;br /&gt;
 - Unique visits&lt;br /&gt;
 - Click-through-rate&lt;br /&gt;
 - Avergage cost-per-click&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
A code snippet provided by Google and embedded in the publishers page grabs the Ads off Google&#039;s Ad server.&lt;br /&gt;
A third party Ad server can be used through AdSense.[http://www.google.com/adsense/support/bin/answer.py?hl=en&amp;amp;answer=94145&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
&amp;quot;How will Google prevent malware from third-party ads?&lt;br /&gt;
&lt;br /&gt;
Google is actively working with trusted advertisers and partners to reduce the risk of malware. We specifically forbid fourth-party calls or sub-syndication to advertisers or vendors we haven&#039;t certified.&lt;br /&gt;
&lt;br /&gt;
Also, all third-party ads are checked for malware when they&#039;re initially entered into our system. Google also employs an automated malware checker that continuously scans all third-party creatives running through the network. Any ad with malware will be automatically pulled from the network to protect our partner websites and their users.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&#039;&#039;&#039;Maleware exploits (Google recommended)&#039;&#039;&#039;&lt;br /&gt;
[http://www.provos.org/index.php?/categories/6-Malware]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Google online security blog&#039;&#039;&#039;&lt;br /&gt;
[http://googleonlinesecurity.blogspot.com/]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The Ghost In The Browser, Analysis of web-based Malware.&#039;&#039;&#039;[http://www.usenix.org/event/hotbots07/tech/full_papers/provos/provos.pdf]&lt;br /&gt;
----&lt;br /&gt;
Very good paper with a wealth of technical infromation on how AdWords works:&lt;br /&gt;
&#039;&#039;&#039;Google AdWords as a Network of Grey Surveillance&#039;&#039;&#039;&lt;br /&gt;
[http://scholar.lib.vt.edu/theses/available/etd-02082010-004431/unrestricted/Roberts_HM_T_2010.pdf]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Google Display Network&#039;&#039;&#039;&lt;br /&gt;
[http://www.google.com/adwords/displaynetwork/]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AdSense for mobile content&#039;&#039;&#039;&lt;br /&gt;
[http://www.google.com/adsense/support/bin/topic.py?hl=en&amp;amp;topic=11951]&lt;br /&gt;
&lt;br /&gt;
===inMobi===&lt;br /&gt;
&lt;br /&gt;
InMobi [http://www.inmobi.com/] claims to be the worlds largest independent ad network, providing solutions for advertisers, producers.&lt;br /&gt;
&lt;br /&gt;
They target the major platforms, including Android and iPhone&lt;br /&gt;
&lt;br /&gt;
Generally speaking, their ads can take a diverse set forms:&lt;br /&gt;
&lt;br /&gt;
      Full screen&lt;br /&gt;
      Expandable&lt;br /&gt;
      Scrolling &lt;br /&gt;
      Touch to enlarge&lt;br /&gt;
      Rotating&lt;br /&gt;
      Video&lt;br /&gt;
&lt;br /&gt;
      Banners&lt;br /&gt;
      Text characters&lt;br /&gt;
&lt;br /&gt;
      Click to landing page&lt;br /&gt;
      Click to download&lt;br /&gt;
      Click to play video&lt;br /&gt;
      Click to call&lt;br /&gt;
      Click to lead &lt;br /&gt;
      Click to text&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ad Publishers&#039;&#039;– InMobi supplies PHP-CURL, JSP, .NET, RUBY, PERL and ASP code snippets for acquiring ads. Pasting the basic code into a site creates a space for a single ad. In addition, an advanced code library is available for running multiple ads on a page, and/or for specifying parameters such as demographics, language and location.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ad Publishers&#039;&#039; – InMobi provides filtering mechanisms to facilitate the filtering of ad types and/or sources.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Application developers&#039;&#039; – InMobi supplies SDKs for Android and iPhone applications developers.&lt;br /&gt;
&lt;br /&gt;
Further investigation is require in order to understand the specifics of ad development and their integration into web pages and mobile applications. Only superficial details are provided on the InMobi page.&lt;br /&gt;
&lt;br /&gt;
==iOS advertisement services==&lt;br /&gt;
&lt;br /&gt;
===iAds===&lt;br /&gt;
&lt;br /&gt;
This is what I could find so far, please feel free to correct any mistakes - Ben&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
iAd [http://advertising.apple.com/] is an Apple created web advertisement framework integrated to iOS starting with iOS 4.  To embed iAds into an iPhone/iPad app, the programmer can use the Xcode IDE [http://developer.apple.com/technologies/tools/xcode.html] to add &amp;quot;Ad Banners&amp;quot; into their apps.  Some tutorials of adding banners can be found in the following links:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;li&amp;gt;http://bees4honey.com/blog/tutorial/how-to-add-iad-banner-in-iphoneipad-app/&lt;br /&gt;
  &amp;lt;li&amp;gt;http://www.raywenderlich.com/1371/how-to-integrate-iad-into-your-iphone-app&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
iAds are created using web technologies, such as HTML5, CSS, JavaScript, using a tool called iAdProducer [http://developer.apple.com/iad/iadproducer/].  To have advertisements served, the ad creator must join the iAd Network [http://advertising.apple.com/], and submit their ad(s) for review. [http://forums.macrumors.com/showthread.php?t=960117]  The distribution and selection of ads is done by the Apple iAd network, and does not currently support &amp;quot;house ads&amp;quot; (ads where ad author = app developer), but will allow the app developer to &amp;quot;exclude ads from competitors or other unwanted advertisers based on specific keywords, URLs, and application Apple IDs&amp;quot; [http://developer.apple.com/support/ios/iad-network.html#howdoi]&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Google Adwords===&lt;br /&gt;
&lt;br /&gt;
Google AdWords on the iPhone/iPod/iPad is the same service as found on PCs save for minor customizations.  These customziations include targetting ads for the platform [http://www.iphonefootprint.com/2008/12/google-adwords-on-iphone/] in addition to key words, and ensuring results fit on the display [http://www.seroundtable.com/archives/016745.html] of the mobile device.&lt;br /&gt;
&lt;br /&gt;
The rearranging of the ad can be attributed to at least the user-agent (UA) in a web request.  This can be tested with changing the user-agent in the browser of a PC and performing searches on Google.  Instructions on changing the UA for Mozilla Firefox can be found at: http://johnbokma.com/mexit/2004/04/24/changinguseragent.html and iPhone UAs can be found at: http://www.mattcutts.com/blog/iphone-user-agent/&lt;br /&gt;
&lt;br /&gt;
See the AdWords description in the Android section above for a more detailed description.&lt;br /&gt;
&lt;br /&gt;
===inMobi===&lt;/div&gt;</summary>
		<author><name>Colin</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:Google_OS&amp;diff=1958</id>
		<title>Talk:Google OS</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:Google_OS&amp;diff=1958"/>
		<updated>2008-10-27T14:44:52Z</updated>

		<summary type="html">&lt;p&gt;Colin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Group 3: Bigtable&lt;br /&gt;
&lt;br /&gt;
Questions from: Group 1, GFS&lt;br /&gt;
&lt;br /&gt;
   1. How is Bigtable like/unlike a relational database?&lt;br /&gt;
&lt;br /&gt;
   ans. Bigtable is unlike a relational database because:&lt;br /&gt;
              - It stores data in SSTables, which are not in proper relational form.&lt;br /&gt;
              - A tablet can store multiple versions of the same data based on timestamps.&lt;br /&gt;
              - The language used to query Bigtable does not support a full relational database functionality.&lt;br /&gt;
        Bigtable is like a relational database because:&lt;br /&gt;
              - Server side scripts can be used to filter results similar to some sql queries.&lt;br /&gt;
&lt;br /&gt;
   2. What is the role of SSTable in Bigtable?&lt;br /&gt;
   &lt;br /&gt;
   ans. It is a model for formating data.&lt;br /&gt;
&lt;br /&gt;
   3. For the webTable, why are domain names stored in reverse order?&lt;br /&gt;
&lt;br /&gt;
   ans. The domain names are stored in reverse order to increase efficiency of a query.&lt;br /&gt;
&lt;br /&gt;
   4. How did Bigtable use Chubby?&lt;br /&gt;
&lt;br /&gt;
   ans. The master server uses Chubby to track tablet servers. &lt;br /&gt;
&lt;br /&gt;
Questions from Group2, Chubby&lt;br /&gt;
&lt;br /&gt;
   1. Why did they not implement the full relational model?&lt;br /&gt;
&lt;br /&gt;
   ans. They did not need a full relational model. They only implemented what they thought they needed at the time.&lt;br /&gt;
&lt;br /&gt;
   2. When could major compaction occur? &lt;br /&gt;
&lt;br /&gt;
   ans. Major compaction could occur when two tables are the same, but stored differently, or when there are lots of gaps due to row deletions.&lt;br /&gt;
&lt;br /&gt;
   3. How does Bigtable handle fine-grained locking?&lt;br /&gt;
&lt;br /&gt;
   ans.&lt;br /&gt;
&lt;br /&gt;
   4. What are the similarities in the architecture between GFS and Bigtable?&lt;br /&gt;
&lt;br /&gt;
   ans. They are similar in master selection and the use of Chubby.&lt;/div&gt;</summary>
		<author><name>Colin</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:Distributed_Shared_Memory&amp;diff=1897</id>
		<title>Talk:Distributed Shared Memory</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:Distributed_Shared_Memory&amp;diff=1897"/>
		<updated>2008-09-24T12:00:33Z</updated>

		<summary type="html">&lt;p&gt;Colin: /* Current DSM systems? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Here is the page where we will be discussing the DSM readings.&lt;br /&gt;
&lt;br /&gt;
== IVY ==&lt;br /&gt;
[[User:Soma|Anil]]: What were the key characteristics of IVY?  What exactly did Kai Li build?&lt;br /&gt;
&lt;br /&gt;
[[user:Alireza|Alireza]] : IVY was a software based DSM system that&#039;s been developed to allow users share their local memories in a distributed manner. IVY was designed to be used in loosely coupled environments. It had five main modules including memory allocation, process management, initialization, remote operation and memory mapping.  The main advantage of IVY was gaining performance in parallel applications comparing.&lt;br /&gt;
&lt;br /&gt;
[[user:Alireza|Alireza]] :(Question) Name some of the applications that you would think benefit from using IVY environment? Distributed Database system is the one that is mentioned in the dissertation. Thinks of something different.&lt;br /&gt;
&lt;br /&gt;
[[user:Azalia|Azalia]]:(Answer) Some of the current sample applications can be (CRM) Customer Relationship Management or (ERP) Enterprise Resource Planning applications that serve multiple users across an organization.Another example, imagine a billing system that has to calculate the telephone bills of thousands of customers can benefit from this environment by calculating the bill of multiple customers at the same time on different machines distributed across the network. Even though, each customer bill calculation can be done separately, using a shared memory space for reading input values like cost per minute, or cost per text message can be very useful. In addition, since each customer bill is a separate object the write operation is done in different pages of the shared memory and even using multiple writer algorithm, in this case, does not introduce any concurrency issue.&lt;br /&gt;
&lt;br /&gt;
== Current DSM systems? ==&lt;br /&gt;
&lt;br /&gt;
[[User:soma|Anil]]: What is a current production system that uses distributed shared memory?  What about the underlying problem makes DSM a good technological fit?&lt;br /&gt;
&lt;br /&gt;
[[user:Azalia|Azalia]]:(Answer) What is a current production system that uses distributed shared memory?&lt;br /&gt;
Any application with complex independent steps that can be parallelized would be suitable for DSM environment. Some of the current sample applications can be (CRM) Customer Relationship Management or (ERP) Enterprise Resource Planning applications that serve multiple users across an organization. &lt;br /&gt;
What about the underlying problem makes DSM a good technological fit?&lt;br /&gt;
Apart from DSM there are alternative methods for using in distributed environment (e.g. RPC and message passing), they have some inadequacies that DSM has been introduced to address them.  For instance, message passing and RPC, have difficulties in sending complex data structures and pointers over the network due to different memory address spaces. The distributed shared memory can be a solution of this problem since all the processors share the same memory address space. In addition, if we consider current RPC technologies like Web Services, we&#039;ll realize that for each task we have to pack and send a lot of XML data around. With DSM we can share a memory space and prevent overloading network by sending XML messages.&lt;br /&gt;
&lt;br /&gt;
[[user:Colin|Colin]]:(Answer) Any systems with a great deal of variability in load on its processors could benefit from DSM. This is because the unified address space makes process migration, and thus load balancing, simpler.&lt;br /&gt;
(Question) How much more efficient is the movement of data across the networks on a system that implements DSM? Does it not send a comparable amount of data on a page fault as message passing or RPC would to invoke a remote call?&lt;br /&gt;
&lt;br /&gt;
== Difference between DSM and NUMA? ==&lt;br /&gt;
&lt;br /&gt;
[[User:Soma|Anil]] What are the differences between DSM and NUMA?  Under what circumstances are each appropriate?&lt;br /&gt;
&lt;br /&gt;
[[User:Alirez|Alireza]]: NUMA follows SMP paradigm where there is common memory bus for accessing shared memories. In addition, one of the most important aspects of the NUMA is that it provides different access time for the processers based on their locations. For instance local processors can have faster access to local memories. In addition, NUMA access to memory is hardware based.&lt;br /&gt;
&lt;br /&gt;
[[User: Joshua Tessier|Joshua Tessier]]:  Correct me if I&#039;m wrong but NUMA is basically a type of DSM.  In a NUMA system, each processor has access to a common memory, however this common memory is distributed across each of the processors.  For example, if there are 8 processors, the total memory is divided into 8 sections.  As stated above, the processors have different access times to memory stores.  Meanwhile, DSM is just dynamic shared memory; not a specific type like NUMA.&lt;br /&gt;
&lt;br /&gt;
== DSM Implementations? ==&lt;br /&gt;
[[User:Azalia|Azalia]]:(Question) What are the different types of DSM Implementations?&lt;br /&gt;
&lt;br /&gt;
[[User:Ywahyudi|Yohan]]:(Answer) There are 3 different types of DSM implementation. The first one is Software-level implementation which can be achieved in user-level, run-time library routine, the OS, or the programming language, for example IVY, Mermaid, Munin, etc. The second one is Hardware-level implementation which ensures that automatic replication of shared data in local memories and processors caches, transparently for software-layer, for example Memnet, Dash, SCI KSR1, etc. Since software is used in hardware support to optimize memory reference, and hardware is used in software solution such as virtual memory management, then the third one is Hybrid Level Implementation which is a combination of both implementation. Several examples of such implementation are Plus, Galactica Net, Alewife, etc.&lt;br /&gt;
&lt;br /&gt;
[[User:Joshua Tessier|Joshua Tessier]]:(Question) Does the hybrid solution hold much relevance today?  From what I got in the paper, it came to light due to some limitations of the hardware/OS layers at the time.  Today, we have a ton of different tools at our disposal and these limitations are no longer present.  How would such a solution be divided today?&lt;/div&gt;</summary>
		<author><name>Colin</name></author>
	</entry>
</feed>