Miu Hirano |
Monday, October 10, 2016
Wednesday, October 5, 2016
Tuesday, October 4, 2016
Monday, October 3, 2016
macOS Sierra: Facebook: Post Using PHP
Command:
$ cat /Library/WebServer/Documents/fb-tokens/index.php
Result:
<?php
print_r($_GET);
?>
URL (Get code):
https://graph.facebook.com/oauth/authorize?client_id=MY_APP_ID&scope=publish_actions&redirect_uri=http://localhost/fb-tokens/
Result:
Array ( [code] => MY_CODE )
URL (GET access token):
https://graph.facebook.com/oauth/access_token?client_id=MY_APP_ID&redirect_uri=http://localhost/fb-tokens/&client_secret=MY_APP_SECRET&code=MY_CODE
Result:
access_token=MY_ACCESS_TOKEN&expires=5176951
Command:
$ cat posttest.php
Result:
<?php
require_once __DIR__ . '/vendor/autoload.php';
require_once("vendor/facebook/php-sdk/src/Facebook/Facebook.php");
use Facebook\Facebook;
$config = array();
$config['app_id'] = 'MY_APP_ID';
$config['app_secret'] = 'MY_APP_SECRET';
$config['fileUpload'] = false; // optional
$fb = new Facebook($config);
$params = array(
"access_token" => "MY_ACCESS_TOKEN",
"message" => "My first post using php",
"link" => "http://nautil.us/issue/40/learning/is-artificial-intelligence-permanently-inscrutable",
"picture" => "http://static.nautil.us/10275_3ac01363eb96084101c0e5ed8be7374a.png",
"name" => "Is Artificial Intelligence Permanently Inscrutable?",
"caption" => "nautil.us",
"description" => "Despite new biology-like tools, some insist interpretation is impossible."
);
// post to Facebook
try {
$ret = $fb->post('/me/feed', $params);
echo 'Successfully posted to Facebook';
} catch(Exception $e) {
echo $e->getMessage();
}
?>
$ cat /Library/WebServer/Documents/fb-tokens/index.php
Result:
<?php
print_r($_GET);
?>
URL (Get code):
https://graph.facebook.com/oauth/authorize?client_id=MY_APP_ID&scope=publish_actions&redirect_uri=http://localhost/fb-tokens/
Result:
Array ( [code] => MY_CODE )
URL (GET access token):
https://graph.facebook.com/oauth/access_token?client_id=MY_APP_ID&redirect_uri=http://localhost/fb-tokens/&client_secret=MY_APP_SECRET&code=MY_CODE
Result:
access_token=MY_ACCESS_TOKEN&expires=5176951
Command:
$ cat posttest.php
Result:
<?php
require_once __DIR__ . '/vendor/autoload.php';
require_once("vendor/facebook/php-sdk/src/Facebook/Facebook.php");
use Facebook\Facebook;
$config = array();
$config['app_id'] = 'MY_APP_ID';
$config['app_secret'] = 'MY_APP_SECRET';
$config['fileUpload'] = false; // optional
$fb = new Facebook($config);
$params = array(
"access_token" => "MY_ACCESS_TOKEN",
"message" => "My first post using php",
"link" => "http://nautil.us/issue/40/learning/is-artificial-intelligence-permanently-inscrutable",
"picture" => "http://static.nautil.us/10275_3ac01363eb96084101c0e5ed8be7374a.png",
"name" => "Is Artificial Intelligence Permanently Inscrutable?",
"caption" => "nautil.us",
"description" => "Despite new biology-like tools, some insist interpretation is impossible."
);
// post to Facebook
try {
$ret = $fb->post('/me/feed', $params);
echo 'Successfully posted to Facebook';
} catch(Exception $e) {
echo $e->getMessage();
}
?>
ラベル:
Facebook,
Facebook Platform,
macOS Sierra,
PHP
macOS Sierra: Apache: Enable PHP and User Directory
Command:
$ sudo vi /etc/apache2/httpd.conf
$ sudo apachectl restart
$ sudo vi /etc/apache2/httpd.conf
$ diff /etc/apache2/httpd.conf.original /etc/apache2/httpd.conf
Result:
166c166
< #LoadModule userdir_module libexec/apache2/mod_userdir.so
---
> LoadModule userdir_module libexec/apache2/mod_userdir.so
169c169
< #LoadModule php5_module libexec/apache2/libphp5.so
---
> LoadModule php5_module libexec/apache2/libphp5.so
Command:
ラベル:
Apache HTTP Server,
macOS Sierra,
PHP
PHP: Installing Facebook SDK for PHP using Composer
Command:
$ cat composer.json
Result:
{
"require" : {
"facebook/php-sdk" : "*"
}
}
Command:
$ php composer.phar install
Result:
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing facebook/php-sdk (5.3.1)
Downloading: 100%
facebook/php-sdk suggests installing guzzlehttp/guzzle (Allows for implementation of the Guzzle HTTP client)
Package facebook/php-sdk is abandoned, you should avoid using it. Use facebook/graph-sdk instead.
Writing lock file
Generating autoload files
Command:
$ tree vendor/
Result:
vendor/
├── autoload.php
├── composer
│ ├── ClassLoader.php
│ ├── LICENSE
│ ├── autoload_classmap.php
│ ├── autoload_files.php
│ ├── autoload_namespaces.php
│ ├── autoload_psr4.php
│ ├── autoload_real.php
│ ├── autoload_static.php
│ └── installed.json
└── facebook
└── php-sdk
├── LICENSE
├── composer.json
├── phpcs.xml.dist
└── src
└── Facebook
├── Authentication
│ ├── AccessToken.php
│ ├── AccessTokenMetadata.php
│ └── OAuth2Client.php
├── Exceptions
│ ├── FacebookAuthenticationException.php
│ ├── FacebookAuthorizationException.php
│ ├── FacebookClientException.php
│ ├── FacebookOtherException.php
│ ├── FacebookResponseException.php
│ ├── FacebookResumableUploadException.php
│ ├── FacebookSDKException.php
│ ├── FacebookServerException.php
│ └── FacebookThrottleException.php
├── Facebook.php
├── FacebookApp.php
├── FacebookBatchRequest.php
├── FacebookBatchResponse.php
├── FacebookClient.php
├── FacebookRequest.php
├── FacebookResponse.php
├── FileUpload
│ ├── FacebookFile.php
│ ├── FacebookResumableUploader.php
│ ├── FacebookTransferChunk.php
│ ├── FacebookVideo.php
│ └── Mimetypes.php
├── GraphNodes
│ ├── Birthday.php
│ ├── Collection.php
│ ├── GraphAchievement.php
│ ├── GraphAlbum.php
│ ├── GraphApplication.php
│ ├── GraphCoverPhoto.php
│ ├── GraphEdge.php
│ ├── GraphEvent.php
│ ├── GraphGroup.php
│ ├── GraphList.php
│ ├── GraphLocation.php
│ ├── GraphNode.php
│ ├── GraphNodeFactory.php
│ ├── GraphObject.php
│ ├── GraphObjectFactory.php
│ ├── GraphPage.php
│ ├── GraphPicture.php
│ ├── GraphSessionInfo.php
│ └── GraphUser.php
├── Helpers
│ ├── FacebookCanvasHelper.php
│ ├── FacebookJavaScriptHelper.php
│ ├── FacebookPageTabHelper.php
│ ├── FacebookRedirectLoginHelper.php
│ └── FacebookSignedRequestFromInputHelper.php
├── Http
│ ├── GraphRawResponse.php
│ ├── RequestBodyInterface.php
│ ├── RequestBodyMultipart.php
│ └── RequestBodyUrlEncoded.php
├── HttpClients
│ ├── FacebookCurl.php
│ ├── FacebookCurlHttpClient.php
│ ├── FacebookGuzzleHttpClient.php
│ ├── FacebookHttpClientInterface.php
│ ├── FacebookStream.php
│ ├── FacebookStreamHttpClient.php
│ ├── HttpClientsFactory.php
│ └── certs
│ └── DigiCertHighAssuranceEVRootCA.pem
├── PersistentData
│ ├── FacebookMemoryPersistentDataHandler.php
│ ├── FacebookSessionPersistentDataHandler.php
│ ├── PersistentDataFactory.php
│ └── PersistentDataInterface.php
├── PseudoRandomString
│ ├── McryptPseudoRandomStringGenerator.php
│ ├── OpenSslPseudoRandomStringGenerator.php
│ ├── PseudoRandomStringGeneratorFactory.php
│ ├── PseudoRandomStringGeneratorInterface.php
│ ├── PseudoRandomStringGeneratorTrait.php
│ └── UrandomPseudoRandomStringGenerator.php
├── SignedRequest.php
├── Url
│ ├── FacebookUrlDetectionHandler.php
│ ├── FacebookUrlManipulator.php
│ └── UrlDetectionInterface.php
├── autoload.php
└── polyfills.php
16 directories, 89 files
$ cat composer.json
Result:
{
"require" : {
"facebook/php-sdk" : "*"
}
}
Command:
$ php composer.phar install
Result:
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing facebook/php-sdk (5.3.1)
Downloading: 100%
facebook/php-sdk suggests installing guzzlehttp/guzzle (Allows for implementation of the Guzzle HTTP client)
Package facebook/php-sdk is abandoned, you should avoid using it. Use facebook/graph-sdk instead.
Writing lock file
Generating autoload files
Command:
$ tree vendor/
Result:
vendor/
├── autoload.php
├── composer
│ ├── ClassLoader.php
│ ├── LICENSE
│ ├── autoload_classmap.php
│ ├── autoload_files.php
│ ├── autoload_namespaces.php
│ ├── autoload_psr4.php
│ ├── autoload_real.php
│ ├── autoload_static.php
│ └── installed.json
└── php-sdk
├── LICENSE
├── composer.json
├── phpcs.xml.dist
└── src
├── Authentication
│ ├── AccessToken.php
│ ├── AccessTokenMetadata.php
│ └── OAuth2Client.php
├── Exceptions
│ ├── FacebookAuthenticationException.php
│ ├── FacebookAuthorizationException.php
│ ├── FacebookClientException.php
│ ├── FacebookOtherException.php
│ ├── FacebookResponseException.php
│ ├── FacebookResumableUploadException.php
│ ├── FacebookSDKException.php
│ ├── FacebookServerException.php
│ └── FacebookThrottleException.php
├── Facebook.php
├── FacebookApp.php
├── FacebookBatchRequest.php
├── FacebookBatchResponse.php
├── FacebookClient.php
├── FacebookRequest.php
├── FacebookResponse.php
├── FileUpload
│ ├── FacebookFile.php
│ ├── FacebookResumableUploader.php
│ ├── FacebookTransferChunk.php
│ ├── FacebookVideo.php
│ └── Mimetypes.php
├── GraphNodes
│ ├── Birthday.php
│ ├── Collection.php
│ ├── GraphAchievement.php
│ ├── GraphAlbum.php
│ ├── GraphApplication.php
│ ├── GraphCoverPhoto.php
│ ├── GraphEdge.php
│ ├── GraphEvent.php
│ ├── GraphGroup.php
│ ├── GraphList.php
│ ├── GraphLocation.php
│ ├── GraphNode.php
│ ├── GraphNodeFactory.php
│ ├── GraphObject.php
│ ├── GraphObjectFactory.php
│ ├── GraphPage.php
│ ├── GraphPicture.php
│ ├── GraphSessionInfo.php
│ └── GraphUser.php
├── Helpers
│ ├── FacebookCanvasHelper.php
│ ├── FacebookJavaScriptHelper.php
│ ├── FacebookPageTabHelper.php
│ ├── FacebookRedirectLoginHelper.php
│ └── FacebookSignedRequestFromInputHelper.php
├── Http
│ ├── GraphRawResponse.php
│ ├── RequestBodyInterface.php
│ ├── RequestBodyMultipart.php
│ └── RequestBodyUrlEncoded.php
├── HttpClients
│ ├── FacebookCurl.php
│ ├── FacebookCurlHttpClient.php
│ ├── FacebookGuzzleHttpClient.php
│ ├── FacebookHttpClientInterface.php
│ ├── FacebookStream.php
│ ├── FacebookStreamHttpClient.php
│ ├── HttpClientsFactory.php
│ └── certs
│ └── DigiCertHighAssuranceEVRootCA.pem
├── PersistentData
│ ├── FacebookMemoryPersistentDataHandler.php
│ ├── FacebookSessionPersistentDataHandler.php
│ ├── PersistentDataFactory.php
│ └── PersistentDataInterface.php
├── PseudoRandomString
│ ├── McryptPseudoRandomStringGenerator.php
│ ├── OpenSslPseudoRandomStringGenerator.php
│ ├── PseudoRandomStringGeneratorFactory.php
│ ├── PseudoRandomStringGeneratorInterface.php
│ ├── PseudoRandomStringGeneratorTrait.php
│ └── UrandomPseudoRandomStringGenerator.php
├── SignedRequest.php
├── Url
│ ├── FacebookUrlDetectionHandler.php
│ ├── FacebookUrlManipulator.php
│ └── UrlDetectionInterface.php
├── autoload.php
└── polyfills.php
16 directories, 89 files
ラベル:
Composer (software),
PHP
PHP: Composer: Downloading and Installing Composer
Command:
$ wget -O composer-setup.php https://getcomposer.org/installer
Result:
--2016-10-03 17:22:22-- https://getcomposer.org/installer
Resolving getcomposer.org... 2001:41d0:a:7b19::2, 87.98.253.108
Connecting to getcomposer.org|2001:41d0:a:7b19::2|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 293630 (287K) [application/octet-stream]
Saving to: ‘composer-setup.php’
composer-setup.php 100%[=======================================>] 286.75K 185KB/s in 1.5s
2016-10-03 17:22:26 (185 KB/s) - ‘composer-setup.php’ saved [293630/293630]
Command:
$ php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
Result:
Installer verified
Command:
$ php composer-setup.php
Result:
All settings correct for using Composer
Downloading 1.2.1...
Composer successfully installed to: /Users/USERNAME/composer.phar
Use it: php composer.phar
$ wget -O composer-setup.php https://getcomposer.org/installer
Result:
--2016-10-03 17:22:22-- https://getcomposer.org/installer
Resolving getcomposer.org... 2001:41d0:a:7b19::2, 87.98.253.108
Connecting to getcomposer.org|2001:41d0:a:7b19::2|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 293630 (287K) [application/octet-stream]
Saving to: ‘composer-setup.php’
composer-setup.php 100%[=======================================>] 286.75K 185KB/s in 1.5s
2016-10-03 17:22:26 (185 KB/s) - ‘composer-setup.php’ saved [293630/293630]
Command:
$ php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
Result:
Installer verified
Command:
$ php composer-setup.php
Result:
All settings correct for using Composer
Downloading 1.2.1...
Composer successfully installed to: /Users/USERNAME/composer.phar
Use it: php composer.phar
Python: ONIOFF - Onion URL Inspector: Installing and Running
Command:
$ git clone https://github.com/k4m4/onioff
Result:
Cloning into 'onioff'...
remote: Counting objects: 57, done.
remote: Compressing objects: 100% (27/27), done.
remote: Total 57 (delta 30), reused 52 (delta 25), pack-reused 0
Unpacking objects: 100% (57/57), done.
Command:
$ cd onioff
$ ls
Result:
CHANGES.rst README.rst onioff.py requirements.txt
LICENSE VERSION reports termcolor.py
Command:
$ cat requirements.txt
Result:
requests
pysocks
$ pip install -r requirements.txt
Result:
Collecting requests (from -r requirements.txt (line 1))
Downloading requests-2.11.1-py2.py3-none-any.whl (514kB)
100% |████████████████████████████████| 522kB 1.5MB/s
Collecting pysocks (from -r requirements.txt (line 2))
Downloading PySocks-1.5.7.tar.gz
Collecting beautifulsoup4 (from -r requirements.txt (line 3))
Downloading beautifulsoup4-4.5.1-py2-none-any.whl (83kB)
100% |████████████████████████████████| 92kB 4.1MB/s
Building wheels for collected packages: pysocks
Running setup.py bdist_wheel for pysocks ... done
Stored in directory: /Users/USERNAME/Library/Caches/pip/wheels/cf/81/67/77884514e566867d5223e5530e27ce9b9433b78c766a400313
Successfully built pysocks
Installing collected packages: requests, pysocks, beautifulsoup4
Successfully installed beautifulsoup4-4.5.1 pysocks-1.5.7 requests-2.11.1
Command:
$ python onioff.py -h
Result:
██████╗ ███╗ ██╗██╗ ██████╗ ███████╗███████╗
██╔═══██╗████╗ ██║██║██╔═══██╗██╔════╝██╔════╝
██║ ██║██╔██╗ ██║██║██║ ██║█████╗ █████╗
██║ ██║██║╚██╗██║██║██║ ██║██╔══╝ ██╔══╝
╚██████╔╝██║ ╚████║██║╚██████╔╝██║ ██║
╚═════╝ ╚═╝ ╚═══╝╚═╝ ╚═════╝ ╚═╝ ╚═╝ v0.1
Onion URL Inspector (ONIOFF)
Made With <3 by: Nikolaos Kamarinakis (k4m4)
Version: 0.1
Usage: python onioff.py {onion} [options]
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-f FILE, --file=FILE onion filename
-o OUTPUT_FILE, --output=OUTPUT_FILE
output filename
Examples:
python onioff.py http://xmh57jrzrnw6insl.onion/
python onioff.py -f ~/onions.txt -o ~/report.txt
python onioff.py https://facebookcorewwwi.onion/ -o ~/report.txt
Command:
$ python onioff.py -f ~/onions.txt -o ~/report.txt
Result:
██████╗ ███╗ ██╗██╗ ██████╗ ███████╗███████╗
██╔═══██╗████╗ ██║██║██╔═══██╗██╔════╝██╔════╝
██║ ██║██╔██╗ ██║██║██║ ██║█████╗ █████╗
██║ ██║██║╚██╗██║██║██║ ██║██╔══╝ ██╔══╝
╚██████╔╝██║ ╚████║██║╚██████╔╝██║ ██║
╚═════╝ ╚═╝ ╚═══╝╚═╝ ╚═════╝ ╚═╝ ╚═╝ v0.1
Onion URL Inspector (ONIOFF)
Made With <3 by: Nikolaos Kamarinakis (k4m4)
Version: 0.1
[+] Commencing Onion Inspection
[-] Tor Offline --> Please Make Sure Tor Is Running
[-] System Exit
$ git clone https://github.com/k4m4/onioff
Result:
Cloning into 'onioff'...
remote: Counting objects: 57, done.
remote: Compressing objects: 100% (27/27), done.
remote: Total 57 (delta 30), reused 52 (delta 25), pack-reused 0
Unpacking objects: 100% (57/57), done.
Command:
$ cd onioff
$ ls
Result:
CHANGES.rst README.rst onioff.py requirements.txt
LICENSE VERSION reports termcolor.py
Command:
$ cat requirements.txt
Result:
requests
pysocks
Command:
Result:
Collecting requests (from -r requirements.txt (line 1))
Downloading requests-2.11.1-py2.py3-none-any.whl (514kB)
100% |████████████████████████████████| 522kB 1.5MB/s
Collecting pysocks (from -r requirements.txt (line 2))
Downloading PySocks-1.5.7.tar.gz
Collecting beautifulsoup4 (from -r requirements.txt (line 3))
Downloading beautifulsoup4-4.5.1-py2-none-any.whl (83kB)
100% |████████████████████████████████| 92kB 4.1MB/s
Building wheels for collected packages: pysocks
Running setup.py bdist_wheel for pysocks ... done
Stored in directory: /Users/USERNAME/Library/Caches/pip/wheels/cf/81/67/77884514e566867d5223e5530e27ce9b9433b78c766a400313
Successfully built pysocks
Installing collected packages: requests, pysocks, beautifulsoup4
Successfully installed beautifulsoup4-4.5.1 pysocks-1.5.7 requests-2.11.1
Command:
$ python onioff.py -h
Result:
██████╗ ███╗ ██╗██╗ ██████╗ ███████╗███████╗
██╔═══██╗████╗ ██║██║██╔═══██╗██╔════╝██╔════╝
██║ ██║██╔██╗ ██║██║██║ ██║█████╗ █████╗
██║ ██║██║╚██╗██║██║██║ ██║██╔══╝ ██╔══╝
╚██████╔╝██║ ╚████║██║╚██████╔╝██║ ██║
╚═════╝ ╚═╝ ╚═══╝╚═╝ ╚═════╝ ╚═╝ ╚═╝ v0.1
Onion URL Inspector (ONIOFF)
Made With <3 by: Nikolaos Kamarinakis (k4m4)
Version: 0.1
Usage: python onioff.py {onion} [options]
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-f FILE, --file=FILE onion filename
-o OUTPUT_FILE, --output=OUTPUT_FILE
output filename
Examples:
python onioff.py http://xmh57jrzrnw6insl.onion/
python onioff.py -f ~/onions.txt -o ~/report.txt
python onioff.py https://facebookcorewwwi.onion/ -o ~/report.txt
Command:
$ python onioff.py -f ~/onions.txt -o ~/report.txt
Result:
██████╗ ███╗ ██╗██╗ ██████╗ ███████╗███████╗
██╔═══██╗████╗ ██║██║██╔═══██╗██╔════╝██╔════╝
██║ ██║██╔██╗ ██║██║██║ ██║█████╗ █████╗
██║ ██║██║╚██╗██║██║██║ ██║██╔══╝ ██╔══╝
╚██████╔╝██║ ╚████║██║╚██████╔╝██║ ██║
╚═════╝ ╚═╝ ╚═══╝╚═╝ ╚═════╝ ╚═╝ ╚═╝ v0.1
Onion URL Inspector (ONIOFF)
Made With <3 by: Nikolaos Kamarinakis (k4m4)
Version: 0.1
[+] Commencing Onion Inspection
[-] Tor Offline --> Please Make Sure Tor Is Running
[-] System Exit
Subscribe to:
Posts (Atom)