web.js 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295
  1. /*
  2. This file is part of the cintruder project, http://cintruder.03c8.net
  3. Copyright (c) 2012/2016 psy <epsylon@riseup.net>
  4. cintruder is free software; you can redistribute it and/or modify it under
  5. the terms of the GNU General Public License as published by the Free
  6. Software Foundation version 3 of the License.
  7. cintruder is distributed in the hope that it will be useful, but WITHOUT ANY
  8. WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  9. FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
  10. details.
  11. You should have received a copy of the GNU General Public License along
  12. with cintruder; if not, write to the Free Software Foundation, Inc., 51
  13. Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  14. */
  15. window.onload = function() {
  16. document.getElementById('ifTrack').style.display = 'block';
  17. document.getElementById('ifTrain').style.display = 'none';
  18. document.getElementById('ifCrack').style.display = 'none';
  19. document.getElementById('ifLocal').style.display = 'block';
  20. document.getElementById('ifUrl').style.display = 'none';
  21. document.getElementById('ifCrackLocal').style.display = 'block';
  22. document.getElementById('ifCrackUrl').style.display = 'none';
  23. document.getElementById('ifMod_set').style.display = 'none';
  24. document.getElementById('ifMod_set_crack').style.display = 'none';
  25. document.getElementById('ifMod_colour').style.display = 'none';
  26. document.getElementById('ifMod_xml').style.display = 'none';
  27. document.getElementById('Results').style.display = 'none';
  28. document.getElementById('Captcha-IN').style.display = 'none';
  29. document.getElementById('OCR-out').style.display = 'none';
  30. }
  31. function SetDefault(){
  32. document.getElementById('track_url').value = '';
  33. document.getElementById('track_num').value = '5';
  34. document.getElementById('tor').checked = false;
  35. document.getElementById('verbose').checked = false;
  36. document.getElementById('SourceFile').value = '';
  37. document.getElementById('train_url').value = '';
  38. document.getElementById('tor2').checked = false;
  39. document.getElementById('verbose2').checked = false;
  40. document.getElementById('set_module').checked = false;
  41. document.getElementById('use_mod').value = '';
  42. document.getElementById('set_colour_id').checked = false;
  43. document.getElementById('set_id').value = '';
  44. document.getElementById('SourceFile2').value = '';
  45. document.getElementById('crack_url').value = '';
  46. document.getElementById('tor3').checked = false;
  47. document.getElementById('set_module_crack').checked = false;
  48. document.getElementById('use_mod_crack').value = '';
  49. document.getElementById('set_xml').checked = false;
  50. document.getElementById('set_xml_file').value = '';
  51. document.getElementById('verbose3').checked = false;
  52. document.getElementById('Results').style.display = 'none';
  53. document.getElementById('Captcha-IN').style.display = 'none';
  54. document.getElementById('OCR-out').style.display = 'none';
  55. document.getElementById('ifMod_set').style.display = 'none';
  56. document.getElementById('ifMod_set_crack').style.display = 'none';
  57. document.getElementById('ifMod_colour').style.display = 'none';
  58. document.getElementById('ifMod_xml').style.display = 'none';
  59. }
  60. function OptionsCheck() {
  61. if (document.getElementById('track').checked) {
  62. document.getElementById('ifTrack').style.display = 'block';
  63. document.getElementById('ifTrain').style.display = 'none';
  64. document.getElementById('ifCrack').style.display = 'none';
  65. SetDefault()
  66. }
  67. else if(document.getElementById('train').checked) {
  68. document.getElementById('ifTrain').style.display = 'block';
  69. document.getElementById('ifTrack').style.display = 'none';
  70. document.getElementById('ifCrack').style.display = 'none';
  71. SetDefault()
  72. TrainSourcesCheck()
  73. }
  74. else if(document.getElementById('crack').checked) {
  75. document.getElementById('ifCrack').style.display = 'block';
  76. document.getElementById('ifTrack').style.display = 'none';
  77. document.getElementById('ifTrain').style.display = 'none';
  78. SetDefault()
  79. CrackingCheck()
  80. }
  81. }
  82. function TrainSourcesCheck() {
  83. if(document.getElementById('training_local').checked) {
  84. document.getElementById('ifLocal').style.display = 'block';
  85. document.getElementById('ifUrl').style.display = 'none';
  86. SetDefault()
  87. SetTrainModule()
  88. }
  89. else if(document.getElementById('training_url').checked) {
  90. document.getElementById('ifUrl').style.display = 'block';
  91. document.getElementById('ifLocal').style.display = 'none';
  92. SetDefault()
  93. SetTrainModule()
  94. }
  95. }
  96. function CrackingCheck() {
  97. if(document.getElementById('cracking_local').checked) {
  98. document.getElementById('ifCrackLocal').style.display = 'block';
  99. document.getElementById('ifCrackUrl').style.display = 'none';
  100. SetDefault()
  101. SetCrackModule()
  102. }
  103. else if(document.getElementById('cracking_url').checked) {
  104. document.getElementById('ifCrackUrl').style.display = 'block';
  105. document.getElementById('ifCrackLocal').style.display = 'none';
  106. SetDefault()
  107. SetCrackModule()
  108. }
  109. }
  110. function SetTrainModule() {
  111. if((document.getElementById('set_module').checked == true)) {
  112. document.getElementById('ifMod_set').style.display = 'block';
  113. document.getElementsByName('train_url')[0].placeholder='Train using a specific OCR exploiting module';
  114. }
  115. else{
  116. document.getElementById("use_mod").value ='';
  117. document.getElementById('ifMod_set').style.display = 'none';
  118. document.getElementsByName('train_url')[0].placeholder='Apply common OCR techniques to a remote captcha';
  119. }
  120. }
  121. function SetColourID() {
  122. if((document.getElementById('set_colour_id').checked == true)) {
  123. document.getElementById('ifMod_colour').style.display = 'block';
  124. }
  125. else{
  126. document.getElementById("set_id").value ='';
  127. document.getElementById('ifMod_colour').style.display = 'none';
  128. }
  129. }
  130. function SetCrackModule() {
  131. if((document.getElementById('set_module_crack').checked == true)) {
  132. document.getElementById('ifMod_set_crack').style.display = 'block';
  133. document.getElementsByName('crack_url')[0].placeholder='Brute force using a specific OCR exploiting module';
  134. }
  135. else if((document.getElementById('set_module_crack').checked == false)) {
  136. document.getElementById('ifMod_set_crack').style.display = 'none';
  137. document.getElementsByName('crack_url')[0].placeholder="Brute force using local dictionary (from: 'dictionary/')";
  138. }
  139. }
  140. function SetXML() {
  141. if((document.getElementById('set_xml').checked == true)) {
  142. document.getElementById('ifMod_xml').style.display = 'block';
  143. }
  144. else{
  145. document.getElementById("set_xml_file").value ='';
  146. document.getElementById('ifMod_xml').style.display = 'none';
  147. }
  148. }
  149. function loadRemoteOCR(train_url){
  150. document.getElementById("target_captcha_img_path").src="images/previews/last-preview.gif#"+ new Date().getTime();
  151. document.getElementById('Captcha-IN').style.display = 'block';
  152. document.getElementById("directory-words").src = "directory-words";
  153. document.getElementById("OCR-out").style.display = "block";
  154. }
  155. function loadRemoteOCRCrack(crack_url){
  156. document.getElementById("target_captcha_img_path").src="images/previews/last-preview.gif#"+ new Date().getTime();
  157. document.getElementById('Captcha-IN').style.display = 'block';
  158. }
  159. function loadOCRCrack(){
  160. document.getElementById("target_captcha_img_path").src="images/previews/last-preview.gif#"+ new Date().getTime();
  161. document.getElementById('Captcha-IN').style.display = 'block';
  162. }
  163. function loadOCR(){
  164. document.getElementById("target_captcha_img_path").src="images/previews/last-preview.gif#"+ new Date().getTime();
  165. document.getElementById('Captcha-IN').style.display = 'block';
  166. document.getElementById("directory-words").src = "directory-words";
  167. document.getElementById("OCR-out").style.display = "block";
  168. }
  169. function TrackCaptchas(){
  170. if(document.getElementById("tor").checked) {
  171. tor="on";
  172. }else{
  173. tor="off";
  174. }
  175. if(document.getElementById("verbose").checked){
  176. verbose="on";
  177. }else{
  178. verbose="off";
  179. }
  180. tracking_source=document.getElementById("track_url").value
  181. tracking_num=document.getElementById("track_num").value
  182. if(tracking_source == "") {
  183. window.alert("You need to enter a valid URL to be tracked!");
  184. return
  185. }else{
  186. params="tracking_source="+escape(tracking_source)+"&tracking_num="+escape(tracking_num)+"&tor="+escape(tor)+"&verbose="+escape(verbose)
  187. runCommandX("cmd_track",params)
  188. document.getElementById("Results").style.display = "block";
  189. }
  190. }
  191. function TrainCaptchas(){
  192. document.getElementById('Captcha-IN').style.display = 'none';
  193. document.getElementById("OCR-out").style.display = "none";
  194. if(document.getElementById("set_colour_id").checked)
  195. {
  196. colourID=document.getElementById("set_id").value;
  197. }else {
  198. colourID="off";
  199. }
  200. if(document.getElementById("set_module").checked)
  201. {
  202. module=document.getElementById("use_mod").value;
  203. }else {
  204. module="off";
  205. }
  206. if(document.getElementById("tor2").checked)
  207. {
  208. tor="on";
  209. }else {
  210. tor="off";
  211. }
  212. if(document.getElementById("verbose2").checked)
  213. {
  214. verbose="on";
  215. }else {
  216. verbose="off";
  217. }
  218. source_file=document.getElementById("SourceFile").value;
  219. train_url=document.getElementById("train_url").value;
  220. if((source_file == "") && (train_url == "")){
  221. window.alert("You need to enter any input!");
  222. return;
  223. }else{
  224. if(source_file==""){
  225. source_file="off"
  226. }
  227. params="train_url="+escape(train_url)+"&source_file="+escape(source_file)+"&colourID="+escape(colourID)+"&module="+escape(module)+"&tor="+escape(tor)+"&verbose="+escape(verbose);
  228. }
  229. runCommandX("cmd_train",params);
  230. if(source_file=="off"){
  231. document.getElementById("Results").style.display = "block";
  232. setTimeout(function() { loadRemoteOCR(train_url) }, 10000);
  233. }else{
  234. document.getElementById("Results").style.display = "block";
  235. setTimeout("loadOCR()", 6000); // delay 6 on local
  236. }
  237. }
  238. function CrackCaptchas(){
  239. document.getElementById('Captcha-IN').style.display = 'none';
  240. document.getElementById("OCR-out").style.display = "none";
  241. if(document.getElementById("set_module_crack").checked)
  242. {
  243. module=document.getElementById("use_mod_crack").value;
  244. }else {
  245. module="off";
  246. }
  247. if(document.getElementById("set_xml").checked)
  248. {
  249. xml=document.getElementById("set_xml_file").value;
  250. }else {
  251. xml="off";
  252. }
  253. if(document.getElementById("tor3").checked)
  254. {
  255. tor="on";
  256. }else {
  257. tor="off";
  258. }
  259. if(document.getElementById("verbose3").checked)
  260. {
  261. verbose="on";
  262. }else {
  263. verbose="off";
  264. }
  265. source_file=document.getElementById("SourceFile2").value;
  266. crack_url=document.getElementById("crack_url").value;
  267. if((source_file == "") && (crack_url == "")){
  268. window.alert("You need to enter any input!");
  269. return;
  270. }else{
  271. if(source_file==""){
  272. source_file="off"
  273. }
  274. params="crack_url="+escape(crack_url)+"&source_file="+escape(source_file)+"&module="+escape(module)+"&tor="+escape(tor)+"&verbose="+escape(verbose)+"&xml="+escape(xml);
  275. }
  276. runCommandX("cmd_crack",params);
  277. if(source_file=="off"){
  278. document.getElementById("Results").style.display = "block";
  279. setTimeout(function() { loadRemoteOCRCrack(crack_url) }, 10000);
  280. }else{
  281. document.getElementById("Results").style.display = "block";
  282. setTimeout("loadOCRCrack()", 6000); // delay 6 on local
  283. }
  284. }
  285. function showResults() {
  286. document.getElementById("Results").style.display = "block";
  287. document.getElementById('Captcha-IN').style.display = 'none';
  288. document.getElementById('OCR-out').style.display = 'none';
  289. }