Tuesday, February 28, 2017

HTTPS Update (1)

Options Indexes FollowSymLinks if you want to have directory indexing working on a site where SSL has been enabled and you need a directory open.

Otherwise it redirects to a 403.

Upgraded wifi speeds are great

So I recently upgraded to 100+ MBit/s internet access, after navigating Comcast's purchasing process. However, not everything can support those sorts of speeds. So, I purchased an Intel PCI card that can handle gigabit speeds, for my old XPS-8300, and also a new wireless adapter (AC, dual-band). The PCI card has been a disappointment, not being able to pull down more than 20 Mbits/s, but the wifi has been much better, getting an average of 114 Mbit/s down and the same ~5 mbits/s up. It also has Bluetooth, which is fun to use for the first time ever.

Unfortunately, there have been strange issues with maintaining access to the network on the new cards. Sometimes connections get dropped on the 5 GHz network. For now, I'm attempting to alleviate that issue by restricting the 5GHz connection to 20 MHz spread instead of 40, which drops the speed to around 80 Mbits/s but also gives me channel 165 (center frequency 5825 MHz) all to myself to avoid interference from neighboring traffic.

The new Lenovo Thinkpad T460p laptop also has a persistent issue across several Linux kernels, in that the wireless chip is not supported by a recent kernel version (4.6 or 4.7), leading to the wifi just dropping out unexpectedly for a few moments, every six-seven minutes. That's unacceptable. There are some fixes, but they're not good enough, so I've been trying out different OSes, keeping in mind potentially putting VMWare Workstation on the final result. For now Fedora KDE is installed, but I may try debian as the fix to the iwlwifi driver there might work better.

Worst comes to worst, I'll try RHEL and put VMWare workstation on it for the VMs. I purchased the machine for pentesting in VMs, for general VM practice, and not much else, therefore it doesn't matter what runs underneath.

Thursday, February 23, 2017

Building a better home network

After long, stressful hours, I like to spend time imagining what a better home network would be like. The more I read about labs, and the more services I put on the network, and also after discovering the homelab subreddit, the more I understand that a better network is a must.

Currently, there is a consumer-grade EA7500 device performing four layers-worth of functions, connected to the modem. An 8-port switch is connected to it, and all the Raspberry Pis, of which there are now five, are plugged into that. One of the Raspberry Pis is a tor relay, separated with a DMZ setting on the EA7500 router device, attached to the switch as well. My workstation for personal and work computers uses wireless connection, because they are physically separate from the rest of the equipment.

I'd like to simultaneously expand the reach of network cabling (in an apartment), separate out the EA 7500 device's functions into a router, firewall, and two Wireless APs, and build a network capable of supporting everything plus a home lab area, all in one.

Goals:

  • 2 APs for best coverage
  • Network cabling attached to the walls to provide access to fun stuff (e.g. Raspberry Pis), workstation area (several computers), and home-lab area
  • Have enough capacity for expansion
  • Implement external and internal firewall solution because it's the sane way and because I'd be able to have a proper DMZ
  • Minimize collision and broadcast domains

Here's a preliminary drawing, open to suggestions:


Yes, I know, tall orders all around. Some more things:

  • Received my new laptop. It's a Thinkpad 460P, with an upgraded 500 GB SSD and upgraded 32 GB RAM. It will form the foundation of the lab, as I can add VMs there more easily.
  • This new laptop will also be a personal laptop, which means I may occasionally plug it into a different area (workstation section).
  • Everything after the second router (or firewall) would be separate VLANs for practice, and use iptables to manage everything.

I'd love to integrate Troy Hunt's fascinating journey with Ubiquiti, since an smooth-looking interface for all the data would be deeee-licious. If I'm already fiddling with everything else on a daily basis, working with OpenWRT or DDWRT is not interesting, plus I'd really love to see data flows across the network. (The five-port Edgerouter from Ubiquiti that I'd bought earlier has a similar beautiful interface.)

To practice wireless testing I'd most likely stand up an ad-hoc non-Internet-enabled wifi network with an old linksys router.

Sunday, February 19, 2017

HTTPS

Blogs don't need HTTPS? Brochureware doesn't need it either, you say? That's what I thought too, but with the advent of Free HTTPS sites there's a growing consensus that everything should have HTTPS, and damn the computational overload on legacy systems.

So I've enabled HTTPS on this blog, and will be doing so for my website as well. After all, as a security professional I might get dinged otherwise.

Update: Followed this guide to fix the issue I was having with infinite redirects when using CPanel's URL redirect functionality, instead of changing the .htaccess file as in the article.

Parsing .Nessus files - Part 1

It's Part 1 because I'm using someone else's script instead of writing my own, or modifying the original. But this one has served well for now.

What do you do when you have the results of several Nessus scans, and you have to use them in a report? You could use the Executive Summary, results outputted by plugin (never host), and click back and forth in multiple HTML documents, in IE for instance. Or you could use this perl script, together with the merger.py code located here, to merge the files into one and output a nice Excel spreadsheet with all the data.

Downside is, it's written in Perl, and I use a clean Kali install on a dedicated pentesting laptop for each job. This necessitates reinstalling all the perl modules, etc, each time. So I finally got tired of it and followed the example of a colleague who packaged them all into a Windows executable.

I did everything in Windows. First, I installed Strawberry perl, then installed cpanm and updated old versions of existing packages and other stuff. It took a while, but gave the nice feeling after a long "apt-get dist-upgrade" has completed. I used Perl Packager, and issued the following command to output an executable (saves you the trouble):

pp -M JSON -M PAR::Dist -M URI::Escape -M LWP::UserAgent -M HTTP::Cookies -M Data::Dump -M Data::Dumper -M XML::Hash::XS -M XML::TreePP -M MIME::Base64 -M Math::Round -M Excel::Writer::XLSX  -M Excel::Writer::XLSX::Chart -M Excel::Writer::XLSX::Chart::Pie -M Data::Table -M Getopt::Std  parse_nessus_xml.v22.pl

...and voila, an executable emerges that can be used from the command line.

Here's a copy. Update: Note that this copy changes as I start to amend the the original. In the latest version, the IPs output in the IP column of the "Vulnerability to IP Summary" worksheet are newline-delimited, rather than colon-delimited. Saves a find/replace step in SublimeText.

P.S. Adding file version information and more is listed here.