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

<channel>
	<title>Cyclops</title>
	<atom:link href="http://cyclops.cs.ucla.edu/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://cyclops.cs.ucla.edu/blog</link>
	<description>Open eyes to your network</description>
	<pubDate>Sun, 11 Oct 2009 02:46:37 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
	<language>en</language>
			<item>
		<title>A routing leak with spaghetti sauce</title>
		<link>http://cyclops.cs.ucla.edu/blog/?p=91</link>
		<comments>http://cyclops.cs.ucla.edu/blog/?p=91#comments</comments>
		<pubDate>Sun, 11 Oct 2009 02:44:33 +0000</pubDate>
		<dc:creator>rveloso</dc:creator>
		
		<category><![CDATA[leaks]]></category>

		<guid isPermaLink="false">http://cyclops.cs.ucla.edu/blog/?p=91</guid>
		<description><![CDATA[It was yesterday (2009-10-09) at 07:21:41 UTC that an italian ISP AS9035 &#8220;ASN-WIND Wind Telecomunicazioni spa&#8221; started leaking no less than 90,358 prefixes to its italian upstream AS 1267. The last announcement happened at 07:23:42 UTC, a bit more than two minutes after the first announcement, and the routes were immediately withdrawn.
Several Cyclops users received [...]]]></description>
			<content:encoded><![CDATA[<p>It was yesterday (2009-10-09) at 07:21:41 UTC that an italian ISP AS9035 &#8220;<em>ASN-WIND Wind Telecomunicazioni spa</em>&#8221; started leaking no less than 90,358 prefixes to its italian upstream AS 1267. The last announcement happened at 07:23:42 UTC, a bit more than two minutes after the first announcement, and the routes were immediately withdrawn.</p>
<p>Several Cyclops users received &#8220;origin change&#8221; alerts like the following one:</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
Alert ID:                     7645041<br />
Alert type:                   origin change<br />
Monitored ASN,prefix:         128.97.0.0/16<br />
Offending attribute:          128.97.0.0/16-9035<br />
Date:                         2009-10-09 07:22:12 UTC<br />
Duration:                     00:00:38 (hh:mm:ss)<br />
No. monitors:                 3<br />
Announced prefix:             128.97.0.0/16<br />
Announced ASPATH:             12637 12637 3269 1267 9035<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>The alert clearly shows that only 3 monitors saw this alert which hints the event was very local, and when drilling down in the link we can see they reside in Italy:</p>
<p><a href="http://cyclops.cs.ucla.edu/blog/wp-content/uploads/2009/10/picture-3.png"><img class="aligncenter size-full wp-image-92" title="picture-3" src="http://cyclops.cs.ucla.edu/blog/wp-content/uploads/2009/10/picture-3.png" alt="" width="500" height="127" /></a></p>
<p>Also, after inspecting the AS paths, it looks like only italian ISPs were involved. It seems this event was a result of an accidental misconfig of the router similar to the AS13214 also detected by Cyclops: <a href="http://cyclops.cs.ucla.edu/blog/?p=78">http://cyclops.cs.ucla.edu/blog/?p=78</a>. &#8211;Ricardo</p>
]]></content:encoded>
			<wfw:commentRss>http://cyclops.cs.ucla.edu/blog/?feed=rss2&amp;p=91</wfw:commentRss>
		</item>
		<item>
		<title>&#8220;Mark as False Alert&#8221; feature</title>
		<link>http://cyclops.cs.ucla.edu/blog/?p=88</link>
		<comments>http://cyclops.cs.ucla.edu/blog/?p=88#comments</comments>
		<pubDate>Wed, 09 Sep 2009 02:49:02 +0000</pubDate>
		<dc:creator>rveloso</dc:creator>
		
		<category><![CDATA[1]]></category>

		<guid isPermaLink="false">http://cyclops.cs.ucla.edu/blog/?p=88</guid>
		<description><![CDATA[Some Cyclops users have been asking questions about the &#8220;Mark as False Alert&#8221; feature, so I would like to spend some time here trying to explain how this works. Cyclops triggers a variety of alerts based on conditions that each user inputs - &#8220;My Prefixes&#8221;, &#8220;My ASNs&#8221; and &#8220;My Neighbors&#8221;. These three lists is what [...]]]></description>
			<content:encoded><![CDATA[<p>Some Cyclops users have been asking questions about the &#8220;Mark as False Alert&#8221; feature, so I would like to spend some time here trying to explain how this works. Cyclops triggers a variety of alerts based on conditions that each user inputs - &#8220;My Prefixes&#8221;, &#8220;My ASNs&#8221; and &#8220;My Neighbors&#8221;. These three lists is what Cyclops calls the <strong>user configuration</strong>. Ideally, Cyclops would discover and mirror the routing objects of each network automatically, so that the <strong>user configuration</strong> mirrors the <strong>network configuration.</strong> Unfortunately, Cyclops is still far from this point, and it still requires manual intervention to reduce both false positives and false negatives in alerting. That means that some alerts that users receive are false alerts, in the sense that the condition that triggered them is not aligned with  their current network configuration. The &#8220;Mark as False Alert&#8221; feature allow users to change the user configuration to reduce the false positives.</p>
<p>For example, if I have &#8220;New Prefix&#8221; alert condition ON  for AS52, I will receive alerts every time AS52 announces a prefix that is not present in &#8220;My Prefixes&#8221; list. If I click on &#8220;Mark as False Alert&#8221; for a &#8220;New Prefix&#8221; alert, i&#8217;m implicitly adding the prefix that triggered the alert to &#8220;My Prefixes&#8221; list, so that alerts on this prefix will stop. So basically, &#8220;Mark as False Alert&#8221; feature changes the user configuration to avoid future alerts from being triggered from the same condition, and thus reduce the number of false positives. We are still researching ways of how to deal with false negatives, more to come soon. &#8211;Ricardo</p>
<p><a href="http://cyclops.cs.ucla.edu/blog/wp-content/uploads/2009/09/false_alerts.png"><img class="alignnone size-full wp-image-89" title="false_alerts" src="http://cyclops.cs.ucla.edu/blog/wp-content/uploads/2009/09/false_alerts.png" alt="" width="500" height="236" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://cyclops.cs.ucla.edu/blog/?feed=rss2&amp;p=88</wfw:commentRss>
		</item>
		<item>
		<title>Cyclops detects global routing leak by AS13214</title>
		<link>http://cyclops.cs.ucla.edu/blog/?p=78</link>
		<comments>http://cyclops.cs.ucla.edu/blog/?p=78#comments</comments>
		<pubDate>Thu, 14 May 2009 04:55:46 +0000</pubDate>
		<dc:creator>rveloso</dc:creator>
		
		<category><![CDATA[leaks]]></category>

		<guid isPermaLink="false">http://cyclops.cs.ucla.edu/blog/?p=78</guid>
		<description><![CDATA[It happened again, this time a router in the Caymans belonging to AS13214 (DCP Networks) decided to announce the global routing table to one of its providers (AS48285). Cyclops immediately started generating alerts for the registered users, an example of such alert would have looked like this:
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
Alert ID:                     3492061
Alert type:                   origin change
Monitored ASN,prefix:         192.35.225.0/24
Offending attribute:          [...]]]></description>
			<content:encoded><![CDATA[<p>It happened again, this time a router in the Caymans belonging to AS13214 (DCP Networks) decided to announce the global routing table to one of its providers (AS48285).<img class="alignright size-medium wp-image-79" title="leak" src="http://cyclops.cs.ucla.edu/blog/wp-content/uploads/2009/05/leak-300x299.jpg" alt="" width="135" height="135" /> Cyclops immediately started generating alerts for the registered users, an example of such alert would have looked like this:</p>
<p><span style="color: #333333;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span></p>
<p><span style="color: #333333;">Alert ID:                     3492061<br />
Alert type:                   origin change<br />
Monitored ASN,prefix:         192.35.225.0/24<br />
Offending attribute:          192.35.225.0/24-13214<br />
Date:                         2009-05-11 11:03:48 UTC<br />
Duration:                     00:00:01 (hh:mm:ss)<br />
No. monitors:                 1<br />
Announced prefix:             192.35.225.0/24<br />
Announced ASPATH:             48285 13214 </span><br />
<span style="color: #333333;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span></p>
<p>As you can see from the text above, only a single monitor detected this incident, and that was a monitor belonging to AS48285 (ROBTEX) that have a BGP session with route-views4. Apparently AS48285 didn&#8217;t propagate the routes upstream, only to its other customers The customers started reaching the Internet using a much shorter path, and had their outbound traffic engineering completely disrupted. After looking at some neighbors of AS13214, it seems this router in the Caymans was the only one going  leaking the prefixes.  The first announcement of AS48285 was on 2009-05-11 11:03:11 UTC and the last on 2009-05-11 12:16:32 UTC, there were 266,289 prefixes leaked (they were withdrawn right afterwards).</p>
<p>This incident shows the advantage of having a wide set of peers for detection, it seems Cyclops was the only tool to detect this incident. Given the amount of banks and financial institutions in the Caymans, there would otherwise be a red flag, but it seems this case was an unintentional misconfiguration by AS13214. You can follow the NANOG thread here:<br />
<a href="http://www.merit.edu/mail.archives/nanog/msg17928.html">http://www.merit.edu/mail.archives/nanog/msg17928.html</a></p>
<p>&#8211;Ricardo</p>
]]></content:encoded>
			<wfw:commentRss>http://cyclops.cs.ucla.edu/blog/?feed=rss2&amp;p=78</wfw:commentRss>
		</item>
		<item>
		<title>Don&#8217;t be afraid of AS3130</title>
		<link>http://cyclops.cs.ucla.edu/blog/?p=73</link>
		<comments>http://cyclops.cs.ucla.edu/blog/?p=73#comments</comments>
		<pubDate>Thu, 30 Apr 2009 21:38:09 +0000</pubDate>
		<dc:creator>rveloso</dc:creator>
		
		<guid isPermaLink="false">http://cyclops.cs.ucla.edu/blog/?p=73</guid>
		<description><![CDATA[Dear Cyclopers,
I&#8217;ve been receiving messages from several cyclopers inquiring about AS3130 containing a false AS adjacency to their own ASN. This is part of an experiment being developed by Randy Bush involving only prefixes 173.0.0.0/16 and 174.128.0.0/16, so it should NOT affect your network. If you want to know more about these experiments, please visit [...]]]></description>
			<content:encoded><![CDATA[<p>Dear Cyclopers,</p>
<p>I&#8217;ve been receiving messages from several cyclopers inquiring about AS3130 containing a false AS adjacency to their own ASN. This is part of an experiment being developed by Randy Bush involving only prefixes 173.0.0.0/16 and 174.128.0.0/16, <strong>so it should NOT affect your network.</strong> If you want to know more about these experiments, please visit the site <a href="http://psg.com/173-174">http://psg.com/173-174</a>. You might also have seen that AS3130 has a very high degree (more than 25k), this is because by default Cyclops does not filter any BGP adjacency and takes into account every single BGP update for degree computation. However, given the false alerts AS3130 has raised, Cyclops will start filtering these announcements.</p>
<p>Sorry for any inconvinience this might have caused and keep cyclopying!</p>
<p>&#8211;Ricardo</p>
]]></content:encoded>
			<wfw:commentRss>http://cyclops.cs.ucla.edu/blog/?feed=rss2&amp;p=73</wfw:commentRss>
		</item>
		<item>
		<title>Evolva Telecom (AS30890) under attack</title>
		<link>http://cyclops.cs.ucla.edu/blog/?p=35</link>
		<comments>http://cyclops.cs.ucla.edu/blog/?p=35#comments</comments>
		<pubDate>Thu, 12 Feb 2009 07:47:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[unclassified]]></category>

		<guid isPermaLink="false">http://cyclops.cs.ucla.edu/blog/?p=35</guid>
		<description><![CDATA[I was going through my Cyclops alerts yesterday when I noticed a  &#8220;More specific prefix&#8221; alert for an UCLA prefix I had configured. Specifically, I noticed AS30890 was announcing the prefix 131.179.244.122/32 which is usually announced as part 131.179.0.0/16 by UCLA (AS52). I further noticed this route was being propagated by several ASes upstream. AS30890 [...]]]></description>
			<content:encoded><![CDATA[<p>I was going through my Cyclops alerts yesterday when I noticed a  &#8220;More specific prefix&#8221; alert for an UCLA prefix I had configured. Specifically, I noticed AS30890 was announcing the prefix 131.179.244.122/32 which is usually announced as part 131.179.0.0/16 by UCLA (AS52). I further noticed this route was being propagated by several ASes upstream. AS30890 is a large ISP in Romania, with a degree of 358 and announcing on the order of 445 prefixes in a &#8220;normal day&#8221;. However, today was definetly not a &#8220;normal day&#8221; for AS30890,  and Cyclops was seeing on the order of 1345 /32 prefixes being announced and withdrawn in a time interval of less than 2 minutes, starting at arround 7:30 UTC on 2009-02-11.</p>
<div id="attachment_39" class="wp-caption alignnone" style="width: 460px"><a href="http://cyclops.cs.ucla.edu/blog/wp-content/uploads/2009/02/picture-4.png"><img class="size-full wp-image-39" title="picture-4" src="http://cyclops.cs.ucla.edu/blog/wp-content/uploads/2009/02/picture-4.png" alt="BGP announcement from AS30890." width="450" height="87" /></a><p class="wp-caption-text">BGP announcement from AS30890.</p></div>
<p>The announced prefixes were being propagated by several routers in Europe. Cyclops gave me a pretty good picture of what was happening through the &#8220;Prefix&#8221; menu:</p>
<p><a href="http://cyclops.cs.ucla.edu/?vm=0&amp;di=2009-02-12&amp;de=2009-02-13&amp;asn=30890&amp;prfx=&amp;loc=&amp;ag=0&amp;v=prfx&amp;sub=1&amp;p=91&amp;s=0&amp;o=8&amp;d=1">http://cyclops.cs.ucla.edu/?vm=0&amp;di=2009-02-12&amp;de=2009-02-13&amp;asn=30890&amp;prfx=&amp;loc=&amp;ag=0&amp;v=prfx&amp;sub=1&amp;p=91&amp;s=0&amp;o=8&amp;d=1</a></p>
<p>At this point I could only do guess work about the causes of this incident. I know sometimes networks announce /32 to their providers to black-hole traffic to specific hosts under DoS attack, a feature called <strong>Remote Triggered Black Hole</strong> (RTBH), initially defined in <a href="http://www.faqs.org/rfcs/rfc3882.html" target="_blank">RFC3882</a>. This feature allows a network to send /32 routes upstream with a bogus next-hop so that traffic to specific hosts gets blocked before even reaching the destination network. Of course that this will &#8220;complete&#8221; the attack and block traffic to the specific end host. However, the advantage is that there will be more room for the other flows in the aggregate. A different technique was proposed more recently that blocks traffic based on source address using Unicast Reverse Path Forwarding (URPF) - check this <a href="http://www.ietf.org/internet-drafts/draft-ietf-opsec-blackhole-urpf-00.txt" target="_blank">I-draft</a>. Basically a router will filter any traffic that does not match the interface where the source would be routed to.</p>
<p>I decided to contact directly Evolva Telecom to verify what went wrong. The folks at Evolva were very responsive and helpful, and provided all the details about what happened:</p>
<ol>
<li>They started receiving traffic in one of their <a href="http://www.de-cix.net/" target="_blank">DE-CIX</a> interfaces with destinations not announced by AS30890; apparently some other peer was forcing default routes to AS30890; traffic to these addresses was heavy, on the order of 2M packets/second</li>
<li>They start sending destination-based /32 filters to all their peers that were sending them traffic; and because these announcements did not have the NO_EXPORT community, they were further propagated for several hops and were caught by Cyclops; however, since they did not want to do destination based filtering on prefixes they were not announcing, they immediately withdraw these prefixes</li>
<li>They fired URPF in the router, which filtered traffic by the source addresses of the DDOS attack (probably fake addresses). Since these addresses had a void next-hop in the router,  traffic from these addresses start being dropped, and the attack was blocked</li>
<li>They changed the chain policy in all outgoing route-maps for /32s from<br />
accept to deny and stopped advertising any kind of /32 prefix</li>
</ol>
<p>Several points can be taken from this incident. First, it was surprising how the /32 routes were propagated these many hops upstream, which I believe was not intended, and shows that there are still lots of networks out there that do not filter on prefix length. Second, additional care is needed inside IXPs, mostly because networks share a layer-2 cloud, and additional filtering is needed to make sure other peers are not default routing to your network. Here&#8217;re some suggestions on how to do that:</p>
<ul>
<li>Netflow analysis</li>
<li>MAC accounting.  Some Internet exchanges will provide a<br />
traffic matrix which may indicate when this behavior is occuring. In<br />
some cases the operator may even notify you about this and &#8220;enforce&#8221; the<br />
policy when someone is attempting to route this way</li>
<li>QPPB/DCU capabilities in Cisco/Juniper</li>
</ul>
<p>The /32 routes displayed by Cyclops correspond actually to addresses that were being the target of a DDOS attack. Evolva Telecom is still investigating the origin of the attack, and I&#8217;ll follow this post as soon as I have more information.</p>
<p>&#8211;Ricardo</p>
]]></content:encoded>
			<wfw:commentRss>http://cyclops.cs.ucla.edu/blog/?feed=rss2&amp;p=35</wfw:commentRss>
		</item>
		<item>
		<title>Cyclops is alive!</title>
		<link>http://cyclops.cs.ucla.edu/blog/?p=14</link>
		<comments>http://cyclops.cs.ucla.edu/blog/?p=14#comments</comments>
		<pubDate>Fri, 23 Jan 2009 06:39:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[unclassified]]></category>

		<guid isPermaLink="false">http://cyclops.cs.ucla.edu/blog/?p=14</guid>
		<description><![CDATA[
I&#8217;m pleased to announce Cyclops, a tool for real-time routing anomaly detection and alerting for service providers and enterprise networks. Cyclops uses real time data from thousands of vantage points of RouteViews, RIPE-RIS, Abilene, Packet Clearing House and University of Colorado Bgpmon, making it the widest and fastest free tool to assess how the rest [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" title="Cyclops" src="http://cyclops.cs.ucla.edu/images/cyclops.png" alt="" width="100" height="87" /></p>
<p>I&#8217;m pleased to announce Cyclops, a tool for real-time routing anomaly detection and alerting for service providers and enterprise networks. Cyclops uses real time data from thousands of vantage points of <a href="http://www.routeviews.org/">RouteViews</a>, <a href="http://www.ripe.net/ris/">RIPE-RIS</a>, <a href="http://noc.net.internet2.edu/i2network/research-data.html">Abilene</a>, <a href="http://www.pch.net/home/index.php">Packet Clearing House</a> and <a href="http://bgpmon.netsec.colostate.edu/">University of Colorado Bgpmon</a>, making it the widest and fastest free tool to assess how the rest of the world is reaching your network. Cyclops has been developed over the last half-year as part of the PhD work of UCLA students that have a track record of building monitoring tools. In fact, one of these students is first author of the very first paper on prefix hijack notification, <a href="http://www.cs.ucla.edu/~mohit/cameraReady/ladSecurity06.pdf ">PHAS</a> published in USENIX Security 2006.</p>
<p>Cyclops features include:<br />
- real-time alerting of prefix hijacks and misconfigured BGP announcements<br />
- alerting of next-hop changes, AS in the middle (transit) and new prefixes<br />
- alerting of new AS neighbor (false link announcement/leakages)<br />
- AS connectivity assessment<br />
- Prefix origin assessment<br />
- Anomaly listings (transient prefix, anomalous depeerings, bogus ASNs, bogon prefixes, long/short prefixes)</p>
<p>To register for Cyclops please visit:<br />
<a href="http://cyclops.cs.ucla.edu/?l=reg">http://cyclops.cs.ucla.edu/?l=reg</a></p>
<p>To start configuring your network go to:<br />
<a href="http://cyclops.cs.ucla.edu/?v=ma&amp;tab=1">http://cyclops.cs.ucla.edu/?v=ma&amp;tab=1</a><br />
(need to be logged in)</p>
<p>You need to tell cyclops what are your prefixes, your ASNes and your neighbor ASNs. Then let Cyclops do its magic.</p>
<p>Please do not hesitate to contact <a href="mailto:cyclops@cs.ucla.edu">cyclops@cs.ucla.edu</a> in case you have questions/comments/bug reports.</p>
<p>During Cyclops development there were constant interactions with network operators and the Nanog community. We believe we have now a solid base to push the tool to the next level and we are currently looking for industry partners that might be interested in running Cyclops inside their networks.</p>
<p>Thanks for being one of the first Cycloper!</p>
<p>In name of the Cyclops team,</p>
<p>&#8211;Ricardo V Oliveira</p>
]]></content:encoded>
			<wfw:commentRss>http://cyclops.cs.ucla.edu/blog/?feed=rss2&amp;p=14</wfw:commentRss>
		</item>
	</channel>
</rss>
