Phish For the Future



  • This report describes “Phish For The Future,” an advanced persistent spearphishing campaign targeting digital civil liberties activists at Free Press and Fight For the Future. Between July 7th and August 8th of 2017 we observed almost 70 spearphishing attempts against employees of internet freedom NGOs Fight for the Future and Free Press, all coming from the same attackers.

    This campaign appears to have been aimed at stealing credentials for various business services including Google, Dropbox, and LinkedIn. At least one account was compromised and was used to send out additional spearphishing emails to others in the organization. Because the compromised account had been neglected for years and contained no recent activity, we suspect the attackers were trying to leverage trust in order to compromise a more recent or high-value account. We were unable to determine what the secondary goal of the campaign was after the credentials were stolen. The attackers were remarkably persistent, switching up their attacks after each failed attempt and becoming increasingly creative with their targeting over time.

    An example of a google credential phishing page

    Some of the attacks were generic, such as a link to view a Gmail document supposedly sent by a co-worker or a LinkedIn notification message from a colleague. Other spearphishing attempts demonstrated quite a bit more ingenuity. One attempt, which targeted Evan Greer, Campaign Director of Fight For The Future, pretended to be a question about where to find the link to buy her music, which is available online. Evan replied with a link. The attacker replied with an email in which they complained that the link was not working correctly, having replaced the link with a phishing page made to look like a Gmail login. Another attack pretended to be from a target’s husband, sharing family photos; the email was forged to include the husband’s name. Yet another attack pretended to be a YouTube comment for a real YouTube video that the target had uploaded. As one might expect from a YouTube comment, the contents of the fake comment were quite aggressive and hateful.

    Other attacks involved sending clickbait headlines to try to get the targets’ interest. Some of the headlines are designed to appeal to the political interests of the targets, such as: “George W. Bush ON TRUMP’S TWEET: A FREE PRESS IS ‘INDISPENSABLE TO DEMOCRACY,’” “Chelsea Manning’s release is the inspiring proof: nothing is impossible,” and “Net Neutrality Activists ‘Rickroll’ FCC Chairman Ajit Pai.” While others are lurid clickbait, presumably designed to embarrass the recipient into clicking a fake unsubscribe link such as “Porn star Jessica Drake claims Donald Trump offered her $10G, use of his private jet for sex,”and “Reality show mom wants to hire a hooker for her autistic son.” The combination of headlines which would appeal to leftist activists and tabloid clickbait which is embarrassing to be found in one’s work email seems well designed to attract the attention of the targets. Each of the emails contained an “unsubscribe” link which lead the user to a gmail credential phishing page such as the one above.

    An example of the lurid headlines sent as clickbait

    At one point the attackers got extremely creative, preying on anxiety about pornographic content showing up in work email. The attackers sent emails titled “You have been successfully subscribed to Pornhub.com” and “You have been successfully subscribed to Redtube.com” to the victims. This was followed up minutes later with several emails all disguised as coming from Pornhub or Redtube with explicit subject lines. Each of the emails contained an unsubscribe link which directed the target to a Google credential phishing page.

    The sophistication of the targeting, the accuracy of the credential phishing pages, the working hours, and the persistent nature of the attacks seem to indicate that the attackers are professionals and had a budget for this campaign. The working hours, as determined by the times the emails were sent seem to indicate that the attackers are working for hire out of an office, they took Saturday and Sunday off. Their hours are consistent with working hours in the UTC+3-5:30 timezone. A login IP from the only account that was compromised successfully did not reveal the physical location of the attackers, as it belonged to AirVPN.

    We observed 16 separate top level domains used in this campaign. Using historical whois data from Passive Total, we were able to discover that some of the domains had been registered with the email address amandalovers@mail[.]com. Several other domains, apparently not used in this campaign, were also registered by amandalovers@mail[.]com1, many of which followed a similar naming pattern to domains used for this campaign. Some of the domains had previously shared servers with domains used in these attacks, increasing our confidence that all of these domains are owned by the same actor. We also discovered a group of domains which were located on what appears to be a dedicated server with transferdomain[.]my, one of the domains used by the attackers.

    Although this phishing campaign does not appear to have been carried out by a nation-state actor and does not involve malware, it serves as an important reminder that civil society is under attack. It is important for all activists, including those working on digital civil liberties issues in the United States, to be aware that they may be targeted by persistent actors who are well-informed about their targets’ personal and professional connections.

    The good news is that 2-factor authentication is an effective countermeasure against the kinds of phishing attacks we saw in this campaign. Even SMS-based 2FA, the least secure 2-factor solution, would have effectively prevented these account takeovers. In addition to becoming adept at spotting emails associated with this phishing campaign, both organizations implemented 2FA on all accounts, which significantly reduced their attack surface.

    Online activism is not always very organized. It often involves a centralized organization and a large network of volunteers, which can pose a security challenge. We recommend an organization-wide requirement to enable two-factor authentication on all accounts with access to sensitive data such as emails, social media accounts, planning documents, github logins, CMS logins, or other credentials. It is our recommended best practice to secure all accounts with two-factor authentication so that trusted compromised accounts can’t be used in the service of more effective spearphishing attacks. For more information on how to set up two-factor authentication see our Surveillance Self Defense guide.

    Indicators of Compromise

    <table>

    <thead>

    <tr>

    <td>Indicator</td>

    <td>Type</td>

    <td>Notes</td>

    </tr>

    </thead>

    <tbody>

    <tr>

    <td>amandalovers@mail.com</td>

    <td>email</td>

    <td>whois information</td>

    </tr>

    <tr>

    <td>[redacted]@gmail.com.rcwnbkcoefuqxeh.mesvr.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>[redacted]@gmail.com.vedvvyuvlhlvifk.mesvr.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>n0replyn0tificati0nupdatemail@gmail.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>n0reply.notificationexsasuve@gmail.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>noreply.535466586you6585tubadh@gmail.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>no.reply.n0tification.alsdkch@gmail.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>noreply.notifications.gkejkdgj@gmail.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>noreplynotification.updates@gmail.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>no.reply.updates.asdfaffgh78jg@gmail.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>no-reply.updates.mailtghtjhthtth@mail.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>no-reply.updates.mailtghtjhthtth@mail.com.qcfhazrahkvspdi.mesvr.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>scorpiobond4@gmail.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>sophia.1johnson@mail.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>[redacted]@freepress.net.ccfczucunupblvv.mesvr.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>[redacted]@freepress.net.pyqdmoszioqnarv.mesvr.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>[redacted]@freepress.net.uaflghqlqzjaxsi.mesvr.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>[redacted]@freepress.net.urjkombsdfgsoui.mesvr.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>[redacted]@freepress.net.vcrzowfhbqqwnlv.mesvr.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>[redacted]@freepress.net.wpzrarbvxhjiacv.mesvr.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>[redacted]@freepress.net.zzchltemoounvvi.mesvr.com</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>tyc@anewwayforward.org</td>

    <td>email</td>

    <td>emails used in campaign</td>

    </tr>

    <tr>

    <td>rulinuxbasic.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>linuxbasicsg.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>optionalbloggingeu.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>shrinkthisurl.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>optionalblogginguk.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>linuxbasicsg1.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>shrinkandshareurl.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>transferdomainmy.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>shoponlinefreeuk.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>strngbltru.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>linuxbasichk.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>pushthisurl.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>linuxbasichk1.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>linuxbasicru.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>domainsfortechhelp.com</td>

    <td>domain</td>

    <td>phish for the future</td>

    </tr>

    <tr>

    <td>colnoygums.com</td>

    <td>domain</td>

    <td>associated with transferdomainmy.com</td>

    </tr>

    <tr>

    <td>habbo.support</td>

    <td>domain</td>

    <td>associated with transferdomainmy.com</td>

    </tr>

    <tr>

    <td>iofficedocx-sign.com</td>

    <td>domain</td>

    <td>associated with transferdomainmy.com</td>

    </tr>

    <tr>

    <td>weboffice-exceldocuments.com</td>

    <td>domain</td>

    <td>associated with transferdomainmy.com</td>

    </tr>

    <tr>

    <td>mehashwaree.com</td>

    <td>domain</td>

    <td>associated with transferdomainmy.com</td>

    </tr>

    <tr>

    <td>user-recover.com</td>

    <td>domain</td>

    <td>associated with transferdomainmy.com</td>

    </tr>

    <tr>

    <td>eofficedocx-websecure.com</td>

    <td>domain</td>

    <td>associated with transferdomainmy.com</td>

    </tr>

    <tr>

    <td>transferdomainmy.com</td>

    <td>domain</td>

    <td>associated with transferdomainmy.com</td>

    </tr>

    <tr>

    <td>unlqscan.com</td>

    <td>domain</td>

    <td>associated with transferdomainmy.com</td>

    </tr>

    <tr>

    <td>versandwelt-klingel.com</td>

    <td>domain</td>

    <td>associated with transferdomainmy.com</td>

    </tr>

    <tr>

    <td>active-life24.com</td>

    <td>domain</td>

    <td>associated with transferdomainmy.com</td>

    </tr>

    <tr>

    <td>planyourexoticvacation.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>russialinuxbasic.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>updatenameserver45.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>optionalblogginges.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>domainsforsupport.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>linuxbasicru1.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>domainsforfreehosting.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>linuxbasicmy.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>hostingserviceforall.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>hostingserviceclean.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>hostingservicesukit.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>hostingservicesloyal.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>standardofficeholland.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>standardofficeil.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>standardofficeuk.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>serverfornetworks.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>serverformailings.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>postserverem.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>serviceforneworder.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>serverforzapper.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>loginservicehelp.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>shortenurlservices.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>youranotherserver.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>linuxhostingplatformuk.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>hostusewithtech.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>serverforhiretech.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>serverfortechhelp.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>serverforhome.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>blogforpranks.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>usewithcareathome.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>optionsothego.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>anitmationworldnews.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>servicegoingfar.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>trusteventservices.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>hostserverrus.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>registrationonlineeurope.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>secureservereurope.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>secureserverasia.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>serverasiasap.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>serverloadbalance.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>mailservereurope.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>localserversa.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>serverdemoservice.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>frwrdrwr.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>fastserveruk.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>fastserverasia.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>fastservereurope.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>fastserverusa.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>chromeperfection.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>trustedserviceonline.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>browserdirectservice.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>browserredirect.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>optionalblogging.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>selectedmaxstores.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>auditionregistrationonline.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>knowledgebaseonlineuk.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>homeforallorphans.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>getreadytorunhalfmarathon.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>linuxserverfast.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>tinyurlshortner.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>economyservicesil.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>maxlaboratories.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>selectiveservicemax.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>portfoliofasinating.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>backwaterreservoir.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>bellsouthnetwork.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>homeremedytipntricks.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>economyfeeds.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>ecoserveraus.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>cyberserverusa.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>inrsrvrer.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>mrgrhr.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>com-nh-en-us.com</td>

    <td>domain</td>

    <td>registered by amandalovers@mail.com</td>

    </tr>

    <tr>

    <td>101.99.75.22</td>

    <td>ipv4</td>

    <td>currently hosts domains owned by attackers</td>

    </tr>

    <tr>

    <td>101.99.75.6</td>

    <td>ipv4</td>

    <td>currently hosts domains owned by attackers</td>

    </tr>

    <tr>

    <td>104.27.134.250</td>

    <td>ipv4</td>

    <td>currently hosts domains owned by attackers</td>

    </tr>

    <tr>

    <td>111.90.149.149</td>

    <td>ipv4</td>

    <td>currently hosts domains owned by attackers</td>

    </tr>

    <tr>

    <td>111.90.157.22</td>

    <td>ipv4</td>

    <td>currently hosts domains owned by attackers</td>

    </tr>

    <tr>

    <td>111.90.157.26</td>

    <td>ipv4</td>

    <td>currently hosts domains owned by attackers</td>

    </tr>

    <tr>

    <td>78.128.92.144</td>

    <td>ipv4</td>

    <td>currently hosts domains owned by attackers</td>

    </tr>

    <tr>

    <td>78.128.92.223</td>

    <td>ipv4</td>

    <td>currently hosts domains owned by attackers</td>

    </tr>

    <tr>

    <td>78.128.92.242</td>

    <td>ipv4</td>

    <td>currently hosts domains owned by attackers</td>

    </tr>

    </tbody>

    </table>

    • 1. From this we can conclude that the attackers are bonded by their love of a woman or women named Amanda.




Tmux Commands

screen and tmux

A comparison of the features (or more-so just a table of notes for accessing some of those features) for GNU screen and BSD-licensed tmux.

The formatting here is simple enough to understand (I would hope). ^ means ctrl+, so ^x is ctrl+x. M- means meta (generally left-alt or escape)+, so M-x is left-alt+x

It should be noted that this is no where near a full feature-set of either group. This - being a cheat-sheet - is just to point out the most very basic features to get you on the road.

Trust the developers and manpage writers more than me. This document is originally from 2009 when tmux was still new - since then both of these programs have had many updates and features added (not all of which have been dutifully noted here).

Action tmux screen
start a new session tmux OR
tmux new OR
tmux new-session
screen
re-attach a detached session tmux attach OR
tmux attach-session
screen-r
re-attach an attached session (detaching it from elsewhere) tmux attach -d OR
tmux attach-session -d
screen -dr
re-attach an attached session (keeping it attached elsewhere) tmux attach OR
tmux attach-session
screen -x
detach from currently attached session ^b d OR
^b :detach
^a ^d OR
^a :detach
rename-window to newname ^b , <newname> OR
^b :rename-window <newn>
^a A <newname>
list windows ^b w ^a w
list windows in chooseable menu ^a "
go to window # ^b # ^a #
go to last-active window ^b l ^a ^a
go to next window ^b n ^a n
go to previous window ^b p ^a p
see keybindings ^b ? ^a ?
list sessions ^b s OR
tmux ls OR
tmux list-sessions
screen -ls
toggle visual bell ^a ^g
create another window ^b c ^a c
exit current shell/window ^d ^d
split window/pane horizontally ^b " ^a S
split window/pane vertically ^b % ^a |
switch to other pane ^b o ^a <tab>
kill the current pane ^b x OR (logout/^D)
collapse the current pane/split (but leave processes running) ^a X
cycle location of panes ^b ^o
swap current pane with previous ^b {
swap current pane with next ^b }
show time ^b t
show numeric values of panes ^b q
toggle zoom-state of current pane (maximize/return current pane) ^b z
break the current pane out of its window (to form new window) ^b !
re-arrange current panels within same window (different layouts) ^b [space]
Kill the current window (and all panes within) ^b killw [target-window]
  • Criteo is an ad company. You may not have heard of them, but they do retargeting, the type of ads that pursue users across the web, beseeching them to purchase a product they once viewed or have already bought. To identify users across websites, Criteo relies on cross-site tracking using cookies and other methods to follow users as they browse. This has led them to try and circumvent the privacy features in Apple’s Safari browser which protects its users from such tracking. Despite this apparently antagonistic attitude towards user privacy, Criteo has also been whitelisted by the Acceptable Ads initiative. This means that their ads are unblocked by popular adblockers such as Adblock and Adblock Plus. Criteo pays Eyeo, the operator of Acceptable Ads, for this whitelisting and must comply with their format requirements. But this also means they can track any user of these adblockers who has not disabled Acceptable Ads, even if they have installed privacy tools such as EasyPrivacy with the intention of protecting themselves. EFF is concerned about Criteo’s continued anti-privacy actions and their continued inclusion in Acceptable Ads.

    Safari Shuts out Third Party Cookies…

    All popular browsers give users control over who gets to set cookies, but Safari is the only one that blocks third-party cookies (those set by a domain other than the site you are visiting) by default. (Safari’s choice is important because only 5-10% of users ever change default settings in software.) Criteo relies on third-party cookies. Since users have little reason to visit Criteo’s own website, the company gets its cookies onto users’ machines through its integration on many online retail websites. Safari’s cookie blocking is a major problem for Criteo, especially given the large and lucrative nature of iPhone’s user base. Rather than accept this, Criteo has repeatedly implemented ways to defeat Safari’s privacy protections.

    One workaround researchers detected Criteo using was to redirect users from sites where their service was present to their own. For example, if you visited wintercoats.com and clicked on a product category, you would be first diverted to criteo.com and then redirected to wintercoats.com/down-filled. Although imperceptible to the user, this detour was enough to persuade the browser that criteo.com is a site you chose to visit, and therefore a first party entitled to set a cookie rather than a third party. Criteo applied for a patent on this method in August 2013.

    …And Closes the Backdoor

    Last summer, however, Apple unveiled a new version of Safari with more sophisticated cookie handling—called Intelligent Tracking Prevention (ITP)—which killed off the redirect technique as a means to circumvent the cookie controls. The browser now analyzes if the user has engaged with a website in a meaningful way before allowing it to set a cookie. The announcement triggered panic among advertising companies, whose trade association, the Interactive Advertising Bureau, denounced the feature and rushed out technical recommendations to work around it. Obviously the level of user “interaction” with Criteo during the redirect described above fails ITP’s test, which meant Criteo was locked out again.

    It appears that Criteo’s response was to abandon cookies for Safari users and to generate a persistent identifier by piggybacking on a key user safety technology called HSTS. When a browser connects to a site via HTTPS (i.e. a site that supports encryption), the site can respond with an HTTP Strict Transport Security policy (HSTS), instructing the browser to only contact it using HTTPS. Without a HSTS policy, your browser might try to connect to the site over regular old unencrypted HTTP in the future—and thus be vulnerable to a downgrade attack. Criteo used HSTS to sneak data into the browser cache to produce an identifier it could use to recognize the individual’s browser and profile them. This approach relied on the fact that it is difficult to clear HSTS data in Safari, requiring the user to purge the cache entirely to delete the identifier. For EFF, it is especially worrisome that Criteo used a technique that pits privacy protection against user security interests by targeting HSTS. Use of this mechanism was documented by Gotham City Research, an investment firm who have bet against Criteo’s stock.

    In early December, Apple released an update to iOS and Safari which disabled Criteo’s ability to exploit HSTS. This led to Criteo revising down their revenue forecasts and a sharp fall in their share price.

    How is Criteo Acceptable Advertising”****?

    "… w__e sort of seek the consent of users, just like we had done before_."__1_ - Erich Eichmann, CEO Criteo

    _"Only users who don’t already have a Criteo identifier will see the header or footer, and it is displayed only once per device. Thanks to [the?] Criteo advertisers network, most of your users would have already accepted our services on the website of another of our partner. On average, only 5% of your users will see the headers or footers, and for those who do, the typical opt-out rate is less than .2%._" - Criteo Support Center

    Criteo styles itself as a leader in privacy practices, yet they have dedicated significant engineering resources to circumventing privacy tools. They claim to have obtained user consent to tracking based on a minimal warning delivered in what we believe to be a highly confusing context. When a user first visits a site containing Criteo’s script, they received a small notice stating, _"_Click any link to use Criteo’s cross-site tracking technology." If the user continues to use the site, they are deemed to have consented. Little wonder that Criteo can boast of a low opt-out rate to their clients.

    Due to their observed behaviour prior to the ITP episode, Criteo’s incorporation into the Acceptable Ads in December 2015 aroused criticism among users of ad blockers. We have written elsewhere about how Acceptable Ads creates a clash of interests between adblocking companies and their users, especially those concerned with their privacy. But Criteo’s participation in Acceptable Ads brings into focus the substantive problem with the program itself. The criteria for Acceptable Ads are concerned chiefly with format and aesthetic aspects (e.g. How big is the ad? How visually intrusive? Does it blink?) and excludes privacy concerns. Retargeting is unpopular and mocked by users, in part because it wears its creepy tracking practices on its sleeve. Our view is that Criteo’s bad behavior should exclude its products from being deemed “acceptable” in any way.

    The fact that the Acceptable Ads Initiative has approved Criteo’s user-tracking-by-misusing-security-features ads is indicative of the privacy problems we believe to be at the heart of the Acceptable Ads program. In March this year, Eyeo announced an Acceptable Ads Committee that will control the criteria for Acceptable Ads in the future. The Committee should start by instituting a rule which excludes companies that circumvent explicit privacy tools or exploit user security technologies for the purpose of tracking.

    1. http://criteo.investorroom.com/download/Transcript_Q3+2017+Earnings_EDITED.pdf

    https://www.eff.org/deeplinks/2017/12/arms-race-against-trackers-safari-leads-criteo-30

    read more
  • Have you ever sent a motivational text to a friend? If you have, perhaps you tailored your message to an activity or location by saying “Good luck in the race!” or “Have fun in New York!” Now, imagine doing this automatically with a compuuuter. What a great invention. Actually, no. That’s not a good invention, it’s our latest Stupid Patent of the Month.

    U.S. Patent No. 9,069,648 is titled “Systems and methods for delivering activity based suggestive (ABS) messages.” The patent describes sending “motivational messages,” based “on the current or anticipated activity of the user,” to a “personal electronic device.” The patent provides examples such as sending the message “don’t give up” when the user is running up a hill. The examples aren’t limited to health or exercise. For example, the patent suggests sending messages like “do not fear” and “God is with you” when a “user enters a dangerous neighborhood.”

    The patent’s description of its invention is filled with silly, non-standard acronyms like ABS for “activity based suggestive” messages or EBIF for “electronic based intelligence function.” These silly acronyms create an illusion of complexity where plain, descriptive language would reveal the mundane nature of the supposed invention. For example, what the patent grandly calls EBIF appears to be nothing more than standard computer processing.

    The ’648 patent is owned by Motivational Health Messaging LLC. While this may be a new company, at least one of the people behind it has been involved in massive patent trolling campaigns before. And the two named inventors have both been inventors on patents that trolls have asserted hundreds of times. One is also an inventor listed on patents asserted by infamous patent troll Shipping and Transit LLC. The other named inventor is the inventor on the patents asserted by Electronic Communication Technologies LLC. Those two entities (with their predecessors) brought over 700 lawsuits, many against very small businesses. In other words, the ’648 patent has been issued to Troll Co. at 1 Troll Street, Troll Town, Trollida USA.

    We believe that the claims of the ’648 patent are clearly invalid under the Supreme Court’s decision in Alice v. CLS Bank, which held abstract ideas do not become eligible for a patent merely because they are implemented in conventional computer technology. Indeed, the patent repeatedly emphasizes that the claimed methods are not tied to any particular hardware or software. For example, it states:

    The software and software logic described in this document … which comprises an ordered listing of executable instructions for implementing logical functions, can be embodied in any non-transitory computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions.

    The ’648 patent issued on June 30, 2015, a full year after the Supreme Court’s Alice ruling. Despite this, the patent examiner never even discussed the decision. If Alice is to mean anything at all, it has to be applied to an application like this one.

    In our view, if Motivational Health Messaging asserts its patent in court, any defendant that fought back should prevail under Alice. Indeed, we would hope that the court would strongly consider awarding attorney’s fees to the defendant in such a case. Shipping & Transit has now had two fee awards made against it for asserting patents that are clearly invalid under Alice. And the Federal Circuit recently held that fee awards can be appropriate when patent owners make objectively unreasonable argument concerning Alice.

    In addition to the problems under Alice, we believe the claims of the ’648 patent should have been rejected as obvious. When the application was filed in 2012, there was nothing new about sending motivational messages or automatically tailoring messages to things like location. In one proposed embodiment, the patent suggests that a “user walking to a hole may be delivered ABS messages, including reminders or instructions on how to play a particular hole.” But golf apps were already doing this. The Patent Office didn’t consider any real-world mobile phone applications when reviewing the application.

    If you want to look for prior art yourself, Unified Patents is running a crowdsourcing contest to find the best prior art to invalidate the ’648 patent. Aside from the warm feelings that come from fighting patent trolls, there is a $2000 prize pool.

    Despite the weakness of its patent, Motivational Health Messaging LLC might still send out demand letters. If you receive such a letter, you can contact EFF and we can help you find counsel.

    We have long complained that the Patent Office promotes patent trolling by granting obvious and/or abstract software patents. The history of the ’648 patent shows how the Patent Office’s failure to properly review applications leads to bad patents falling into the hands of trolls.

    read more
});