I noticed that I was mentioned in the Security Now show(epi: 457, 558). Yipee!

Download any or all Steve Gibson’s GRC Security Now podcasts via a bash script.
The script can look at the episodes already downloaded and download the next one.
You can specify the episode(s). Download 1 or a range.
Another function is to search for text within ALL the episodes and copy the episode text to another directory for further reading.
Run it with “-h” for all the other options.

The other war survivors in the US are victims of a lethal machine designed to extract maximum profit for as long as possible, as are their brothers and sisters in the cold ground, as are the murdered civilians in Asia and the Middle East, as are we all.

Picador Publishing recently released a 40th anniversary edition of Philip Caputo’s Vietnam masterpiece, A Rumor of War. I was happy to purchase a copy, having read my original copy to tatters some 30 years ago in my ongoing quest to better understand my oft-inscrutable father, and to better understand the war that left such a deep, damaging mark on him.

Caputo’s harrowing memoir was one of many dozens I pored through over the years in that endeavor, with limited success. The Vietnam War is everywhere, and nowhere. It touches everything and everyone even all these years later, yet nobody talks about it; Ken Burns made a mighty documentary attempt at opening a conversation on the massive meaning and impact of that war, but his endeavor fell far short by failing to recognize the significance of the war resistance that was, after all these years, proven absolutely right.

When I was a boy, the old men like my grandfather were veterans of World War II or Korea, or both. The sailors wore hats emblazoned with the ships they had served on, the infantrymen marched in the annual parades, and nobody avoided the subject of war around them. This seems strange in retrospect, because the “Good Wars” also involved astonishing acts of carnage committed against civilian populations. They also involved active war resistance, though not at the scale seen in the years to come.

ADVERTISING

Don’t let big tech control what news you see. Get more stories like this in your inbox, every day.

email address

Now that I am a man, the old men are Vietnam veterans, and while we don’t flee the topic of the war the way we did 30 years ago, it is best left alone. Old scars still bleed, and the killing fields remain only a nightmare away.

Today, as with every Memorial Day year after year, there are flags. The Boston Common is filled right now with more than 37,000 small US flags, placed there by volunteers to commemorate every Massachusetts soldier killed in battle since the Revolution. Thousands of those flags represent soldiers who died in Vietnam. The fluttering sea of red, white and blue creates an uncommon silence in the heart of the city.

More than 100 soldiers from 93 different Massachusetts towns have died in Iraq and Afghanistan since 2001. Their flags share the Common with their Vietnam forebears, but more than that, they share the vicious fate of having died in wars that should not have been fought. The astonishing Vietnam War memorial in Washington DC should not exist. Should someone finally choose to honor the fallen of the Forever War with a wall of their own, it will be a monument to our gross failure as a society to keep them alive. Should a wall ever be erected honoring the civilians murdered in these wars, it would blot out the sun and stand as brick-and-mortar evidence of crimes against humanity.

When Philip Caputo marched off to war in 1965, he and his fellow soldiers were filled with the missionary zeal imbued by President Kennedy in those years, when the majority of people in this country bought into narratives of US exceptionalism and the moral righteousness of US military hegemony. “For Americans who did not come of age in the early sixties,” wrote Caputo in his memoir, “it may be hard to grasp what those years were like — the pride and overpowering self-assurance that prevailed.” It didn’t last, of course; the war beat the idealism out of them one long day at a time. “We left Vietnam peculiar creatures,” said Caputo, “with young shoulders that bore rather old heads.”

It is strange to imagine such idealism today. The Vietnam War lasted 25 years, and the wars in Iraq and Afghanistan have lasted 27 years with no end in sight — the Trump administration is wrapping our seemingly eternal involvement in Afghanistan in multiple layers of secrecy — shattering the lives of millions in the gritty disarray of a military empire in collapse.

It took decades for the country to come to grips with the folly that was Vietnam, but it was abundantly clear that Iraq and Afghanistan were a disastrous fool’s errand before the shooting even started. Yet we invaded anyway, and still we remain so many years later, because war is what we do.

It is our principle export, a vital economic engine, the hub to which all the spokes of our rickety national wheel are attached, and it is visibly cracking. You can’t steal $6,000,000,000,000 from a country in less than 20 years and fail to make a monstrous impact on the very bones of that society, yet that six trillion is merely loose change compared to what we have squandered on permanent war since 1947.

Every bomb dropped, every missile launched, every bullet fired, every bandage used, every body bag filled represents money that once belonged to all of us but has been transferred to a small group of wealthy war profiteers we will never meet. The theft is generational in scope, and affects everything from the hospital bills we can’t afford to the roads too potholed to drive on to the schools without enough teachers and books. The damage done to us all is comprehensive, and that’s before we get to the body count.

And so there are the flags of Memorial Day, meant to honor the sacrifice of those who died in the wars. The remaining war survivors in the US are victims of a lethal machine designed to extract maximum profit for as long as possible, as are their brothers and sisters in the cold ground, as are the murdered civilians in Asia and the Middle East, as are we all.

Vietnam, Afghanistan, Iraq … it’s all the same war, bolstered by the same profit motive and veiled in the same empty promises. Only the dead — the fallen US soldiers and those they have killed — know the true cost of war here at the end of empire. A truly fitting memorial would be a Memorial Day when no new flags are needed, when we have all the dead we can stand and choose not to make more.

Other than commonly using the Windows Task Manager to end a hung task or process, it is also very useful to quickly check the active running programs on your computer. You may noticed that there is quite a number of svchost.exe listed in the processes tab and is probably wondering what is it and how come there are so many of them running? Basically SVCHOST is used by Windows to run multiple Windows services and the reason why Windows services uses svchost.exe to run is because they are in DLL files and not an independent executable (.EXE) file. If you didn’t know, Windows Services is one of the startup method in Windows where it can automatically run in background without even requiring the user to login to their account in Windows, unlike other startup method where the programs will only run when the user is logged in to Windows.

Normally users would ignore the existence of svchost.exe listed in the Windows Task Manager and only look for some dubious image name. This is where some malware takes advantage by using the file name as svchost.exe, hoping that you would not notice its presence. One easy way to find out a suspicious svchost.exe is by looking at the user name that is used to run the svchost.exe. If the svchost is ran by SYSTEM, NETWORK SERVICE or LOCAL SERVICE, then it should be legitimate but if it is ran under YOUR user account, then you need to investigate if the svchost.exe file is from another location than C:\Windows\System32\. If you’d like to identify the services that are ran behind the svchost.exe, here are 7 ways to do it. 1. Windows Task Manager

Starting from Windows Vista, Microsoft has made it easy because the Task Manager is capable of showing you the service name associated with the svchost.exe process. To run windows Task Manager, right click on the task bar and select “Start Task Manager”. Alternatively you can also simultaneously press Ctrl+Shift+Esc. Then all you need to do is right click on the svchost.exe process and select “Go to Service(s)” where you will automatically jump to the Services tab and the service name being highlight.

You are able to start or stop the service by right clicking on the service name. The problem is, some virus disables the Windows Task Manager by changing a registry value and it is important to know other methods of identifying the svchost.exe service name.

2. Command Prompt

Another method to reveal the service that is associated with the svchost.exe is by using tasklist.exe from command prompt. In command prompt, type the command below, hit enter and the service name will be displayed at the right side of the tasklist output.

tasklist /svc /fi “IMAGENAME eq svchost.exe”

There are some limitations in using the tasklist.exe command line tool because it only the cryptic service name, not the display name or description. Just like Task Manager, command prompt too can be disabled from running by malware which is why sometimes it is good to have third party tools in hand.

3. Process Explorer

Process Explorer is the grandfather of all task managers. So far it seems to be the most comprehensive tool to control and view the information associated with svchost.exe. Simply double click on the svchost.exe in Process Explorer and click on the Services tab.

First you get to see all the services registered in the process that you’re viewing, then it shows the service name, display name and the path to do DLL file that was loaded. You are also able to configure the permissions for the service plus stopping, restarting, pausing and resuming the service.

Process Hacker is another popular free and powerful open source task manager that is capable of showing and controlling the services from svchosts.exe process. Just like Process Explorer, double click on svchost.exe process and go to the Services tab. The list of associates services is shown and you can stop or pause the service. Double clicking on the service will bring up a more advanced property window to configure the permissions, startup type, error control and many more.

There are both installer and portable versions available including 32-bit and 64-bit builds.

Svchost Process Analyzer is a free and portable program that analyzes the svchost.exe and shows services that is associated with the process. Clicking on any ID on the top window will display the services at the bottom together with the DLL file and status. The description of the service will automatically refresh and shown at the top bar of the program. This tool can only display information but lack of control options.

Svchost Viewer is another free and open source utility hosted at CodePlex that gives you the basic information such as service name and description. There are also two checkboxes to show if the service can be paused or stopped. If it can be stopped, click on the Service Control menu bar and select “Stop Selected Service”. A piece of interesting information shown in Svchost Viewer is the amount of data written and read.

Services In Svchost is a very simple program that simply shows the services in the svchosts.exe. There is no description, no control, or DLL file information. The only unique feature found in this utility is the ability to view the services on remote computers by entering the computer name or IP address.

There are requirements if you want to get the services on remote computer. Firstly it requires a user account that has a password set (empty password is not allowed) and the Remote Registry service must be manually started. Make sure the Windows Firewall is not blocking the connection. Once all this 3 requirements are met, you need to manually authenticate with the remote computer by accessing the shared folders. After authentication, simply enter the computer name and click Get Services button.

1 Preliminary Note

In this tutorial, I use the hostname server1.example.com with the IP address 192.168.1.100. These settings might differ for you, so you have to replace them where appropriate.

I’m running all the steps in this tutorial with root privileges, so make sure you’re logged in as root:

sudo -s

2 Installing MySQL 5.7

In order to install MySQL, we run:

apt-get -y install mysql-server mysql-client

You will be asked to provide a password for the MySQL root user – this password is valid for the user [email protected] as well as [email protected], so we don’t have to specify a MySQL root password manually later on:

New password for the MySQL “root” user:<– yourrootsqlpasswordRepeat password for the MySQL “root” user:<– yourrootsqlpassword

To secure the database server and remove the anonymous user and test database, run the mysql_secure_installation command.

VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?

Press y|Y for Yes, any other key for No: <– Press y if you want this function or press Enter otherwise.
Using existing password for root.
Change the password for root ? ((Press y|Y for Yes, any other key for No) : <– Press enter

… skipping.
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

3 Installing Nginx

Nginx is available as a package for Ubuntu 16.04 which we can install.

apt-get -y install nginx

Start nginx afterwards:

service nginx start

Type in your web server’s IP address or hostname into a browser (e.g. http://192.168.1.100), and you should see the following page:

The default nginx document root on Ubuntu 16.04 is /var/www/html.

4 Installing PHP 7

We can make PHP work in nginx through PHP-FPM (PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI implementation with some additional features useful for sites of any size, especially busier sites) which we install as follows:

apt-get -y install php7.0-fpm

PHP-FPM is a daemon process (with the init script php7.0-fpm) that runs a FastCGI server on the socket /run/php/php7.0-fpm.sock.

5 Configuring nginx

The nginx configuration is in /etc/nginx/nginx.conf which we open now:

server_name _; makes this a default catchall vhost (of course, you can as well specify a hostname here like www.example.com).

root /var/www/html; means that the document root is the directory /var/www/html.

The important part for PHP is the location ~ \.php$ {} stanza. Uncomment it to enable it.

Now save the file and reload nginx:

service nginx reload

Next open /etc/php/7.0/fpm/php.ini…

nano /etc/php/7.0/fpm/php.ini

… and set cgi.fix_pathinfo=0:

[...]
; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's
; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok
; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting
; this to 1 will cause PHP CGI to fix its paths to conform to the spec. A setting
; of zero causes PHP to behave as before. Default is 1. You should fix your scripts
; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.
; http://php.net/cgi.fix-pathinfo
cgi.fix_pathinfo=0
[...]

Reload PHP-FPM:

service php7.0-fpm reload

Now create the following PHP file in the document root /var/www/html:

nano /var/www/html/info.php

<?php
phpinfo();
?>

Now we call that file in a browser (e.g. http://192.168.1.100/info.php):

As you see, PHP 7 is working, and it’s working through FPM/FastCGI, as shown in the Server API line. If you scroll further down, you will see all modules that are already enabled in PHP. MySQL is not listed there which means we don’t have MySQL support in PHP yet.

6 Getting MySQL Support In PHP 7

To get MySQL support in PHP, we can install the php7.0-mysql package. It’s a good idea to install some other PHP modules as well as you might need them for your applications. You can search for available PHP modules like this:

Logical drives

The Win32_LogicalDisk WMI class represents a data source that resolves to an actual local storage device on a computer system running Windows. While Caption, Description, DriveType, ProviderName, and VolumeName are useful in most cases, more properties are available, and a complete list is available at http://msdn.microsoft.com/en-us/library/windows/desktop/aa394173(v=vs.85).aspx. The output will be formatted as a table, the properties will be the column headings, and they will be placed into alphabetical order.

Caption is the drive letter of the logical disk. The Name property also returns the drive letter.

Description is the type of disk. For example: Local Fixed Disk, CD-ROM Disc, or Removable Disk.

DriveType is returned as an integer that corresponds to the type of disk drive the logical disk represents (and this matches the Description, making DriveType sort of superfluous).