[Script] phpFox - Community Project
I want to start a new project with the help of the community and Sven if we get stuck at some point
I know that the platform trainer will be released some day but I hope that this step by step guide will help you to understand how GSA works. This could help anyone who wants to fine tune existing scripts or scripts build with the platform trainer one day. Don't hesitate to ask any questions and assist me as good as you can.
As a side note I've tried to script some engines and none of it worked for me without the help of Sven, lol.
Enough talk, let's get started.
Here are some example sites for phpfox I've found by now:
How did I found these sites?
Google: "powered by phpfox". This is the standard keyword to begin a search for all platforms. If you don't find anything related to your platform you should search for a demo site for that platform and try to figure out some unique footprints on that sites.
In this case I've noticed that phpFox has unique footprints for all releases they publish.
Now we have a good chunk of footprints to begin with:
"powered by phpfox version"
"Powered By phpFoX Version 1.5.1."
"powered by phpfox version 1.6"
"Powered by phpFoX Version 1.6.20."
"Powered by phpFoX Version 1.6.21."
"Powered by phpfox version 2.0"
"Powered By Phpfox Version 2.0.4"
"Powered by phpfox version 2.0.5"
"Powered By phpFox Version 2.0.6."
"Powered By phpFox Version 2.0.7."
"powered By Phpfox Version 2.1.0"
"Powered By phpFox Version 2.1.0beta2"
"Powered By Phpfox Version 2.1.1"
"Powered By phpFox Version 3.0.0."
"Powered By phpFox Version 3.0.0beta1."
"Powered By phpFox Version 3.0.0beta5."
"Powered By phpFox Version 3.0.0rc1."
"Powered By phpFox Version 3.0.0rc3."
"Powered By phpFox Version 3.0.1."
"Powered By phpFox Version 3.0.2"
"Powered By phpFox Version 3.2.0."
"Powered By phpFox Version 3.2.0beta1."
"Powered By phpFox Version 3.2.0rc1."
"Powered By phpFox Version 3.3.0"
"Powered By phpFox Version 3.3.0beta1."
"Powered By phpFox Version 3.3.0beta2."
"Powered By phpFox Version 3.3.0rc1."
Next thing I like to do is to take a look into the URLs and registration form of these websites. Footprints like "Sign up for phpFox" or "/index.php?do=/user/browse/" (= inurl:"/index.php?do=/user/browse/") would be just fine, if you get good results in google. As both footprints gave me not as much results as I hoped for I leave them out for now.
Once we have figured out some footprints we use the most common one "powered by phpfox" for detection as GSA needs to know what kind of platform it deals with. As some sites will hide these footprint or the footprint isn't as unique as it should be it is always a good idea to investigate the source code of the platform. The best results we would get to identify a platform is to find a code snippet that is unique and a component of every homepage that is driven by that platform engine.
You can open the source code with "ctrl+u" (in chrome). I have found "content="phpFox"" and "Phpfox.init" in some of those sites and these snippets will help for the beginning.
Now that we've done our research for footprints and identifiers we can compile our first very basic script:
[setup]
enabled=1
default checked=0
page must have=powered by phpfox|content="phpFox"|Phpfox.init
;as you can see these our code snippets and most common footprint without quotes
;page must have=!PAGE SHOULD NOT HAVE
engine type=MyEngines
description=Social Network
search term="powered by phpfox version"|"Powered By phpFoX Version 1.5.1."|"powered by phpfox version 1.6"|"Powered by phpFoX Version 1.6.20."|"Powered by phpFoX Version 1.6.21."|"Powered by phpfox version 2.0"|"Powered By Phpfox Version 2.0.4"|"Powered by phpfox version 2.0.5"|"Powered By phpFox Version 2.0.6."|"Powered By phpFox Version 2.0.7."|"powered By Phpfox Version 2.1.0"|"Powered By phpFox Version 2.1.0beta2"|"Powered By Phpfox Version 2.1.1"|"Powered By phpFox Version 3.0.0."|"Powered By phpFox Version 3.0.0beta1."|"Powered By phpFox Version 3.0.0beta5."|"Powered By phpFox Version 3.0.0rc1."|"Powered By phpFox Version 3.0.0rc3."|"Powered By phpFox Version 3.0.1."|"Powered By phpFox Version 3.0.2"|"Powered By phpFox Version 3.2.0."|"Powered By phpFox Version 3.2.0beta1."|"Powered By phpFox Version 3.2.0rc1."|"Powered By phpFox Version 3.3.0"|"Powered By phpFox Version 3.3.0beta1."|"Powered By phpFox Version 3.3.0beta2."|"Powered By phpFox Version 3.3.0rc1."
;in "search term=" you have to fill in your footprints seperated with a "|"
Copy and paste this script into your text editor and save it as "phpFox.ini". This little script is very useful right now as it helps to find and identify websites powered by phpFox.
Next you have to do is to paste phpFox.ini into your GSA engines folder (...GSA Search Engine Ranker\Engines). You can scrape for phpFox sites with the "Search online for URLs"-Tool (Options -> Tools -> Search online..) now. Just choose your footprints by "Add predifined footprints" -> MyEngines -> phpFox. It is helpful to save the results to a custom file as well as the unknown ("Save Unknown") once scraping is done. The unknown sites can help to improve your script later and to identify more of these platform.
Comments
@Ozz: yes would be nice if you can upload it. Might be just some minor things to change to get it working.
http://xkcd.com/208/) gives huge advantages.
Tot hose not noticing, this engine was added to the latest release of the software. However it was a bit complex as there was a lot ajax interaction and I had to change a lot things. In fact was one of the more complicated engines. You can study the ini file from the release to see what I mean.
But don't worry, most of the engines are really easy to do so don't give up