LINUX.ORG.RU

Сообщения BruteForce

 

Менеджер паролей. Четвёртый квартал 2025.

Сабж.

Посоветуйте решение под требования: Android+Ubuntu+синхронизация. Можно ещё с аддоном в брузер(фурифокс-лайк). Self-hosted.

Желательно такое, чтобы не нужно было заводить тему Менеджер паролей. Первый квартал 2026..


Solution:

KeePassDX + KeePassXC

 , , ,

BruteForce
()

malloc() не хочет отдавать NULL

Не могу добиться от malloc возврата NULL!

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <time.h>

int main()
{
	clock_t tmstmp;

	tmstmp = clock();
	printf("clock = %ld\n", tmstmp);

	size_t gb24 = 24LU*1024*1024*1024;
	volatile unsigned char* pre_mem = malloc(gb24);
	for (size_t i = 0; i < gb24; i += sizeof(clock_t)) {
		*(pre_mem + i) = clock();
	}
	//uint_t offset = 0;
	//explicit_bzero(pre_mem, gb24);
	printf("starting the loop\n");
	tmstmp = clock();
	printf("clock = %ld\n", tmstmp);
	fflush(stdin);

	size_t counter = 0;
	for(;counter < 12345678;++counter) {
		//*(pre_mem + offset) = counter;
		//offset += (sizeof(counter));

		size_t mem_size = 64*1024;
		volatile unsigned char* mem = malloc(mem_size);
		for (size_t i = 0; i < mem_size; i+=sizeof(clock_t)) {
			*(mem+i) = clock();
		}
		if (NULL == mem) {
			printf("iter %lu: NULL\n", counter);
			break;
		} else {
			for (size_t i = 0; i < mem_size; i+=sizeof(clock_t)) {
				*(mem+i) = clock();
			}
			*(mem + counter%(4096)) = counter;
		}
	}

	return counter % 123456789;
}

У меня на машине 16ГБ озу и 32 свопа.

/tmp ❯❯❯ journalctl -k --since "-5 minutes" | grep -i -E 'out of memory|oom-killer|memory cgroup|Killed process'
Nov 16 18:09:49 g16 kernel: nvim invoked oom-killer: gfp_mask=0x140cca(GFP_HIGHUSER_MOVABLE|__GFP_COMP), order=0, oom_score_adj=0
Nov 16 18:09:49 g16 kernel: Out of memory: Killed process 428379 (a.out) total-vm:29233540kB, anon-rss:9961472kB, file-rss:724kB, shmem-rss:0kB, UID:1000 pgtables:57260kB oom_score_adj:0

если не инициализировать всю память, а только «местами», то краш случается, когда виртуальной памяти отдано уже 80-110 гигов.

Помогите получить от malloc NULL!!

А то что это получается, не надо чекать что там вернул malloc?

 , , , ,

BruteForce
()

GPL и AI слоп

Не могу понять общий случай: GPLv3 разрешает тренить на нём модели, но использовать их для коммерческой разработки нельзя будет? Или где?

 , , ,

BruteForce
()

OneTimeSecret: ложь на спине опенсорса?

возможно в Talks? Не знаю.

Несколько дней назад чёрт меня дёрнул озаботится вопросом «безопасности» сервиса OneTimeSecret.

После относительно внимательного изучения обнаружилось вот что: проект играет на ожиданиях и, возможно, ещё и лжёт.

1. Многие верят или хотят, чтобы верили другие

Во всяческих статьях по безобразности для хакеров OTS активно форсят. Например:

Там встречается такое:

The secret is encrypted and password protected, hence it is immune to interceptions and man-in-the-middle attacks. The password-protected secret ensures the message isn’t tampered with in transit. The sender can set an autodestruct timer for the secret. Thus, even if the message is not opened, it will be destroyed after a certain period.

То есть утверждается:

  1. Секрет шифрован.
  2. Защищён паролем.
  3. Устойчив к MITM.
  4. Пароль защищает от подмены.
  5. Если сообщение не было открыто, оно будет уничтожено.

Спойлер: 1, 2, 3 — правда. 4, 2, 1, 3 — ложь. 5 — мы не знаем!

2. «Автор»

Вот этот пацан: Деланó Engineering leader and expert in high-performing teams and secure systems. Former VP Engineering at health tech startups. Passionate about privacy and open source. Aiming to develop essential web security tools full-time.

Что он нам расскажет про своё поделие?

I built One-Time Secret as a way to share sensitive information that’s both simple and secure.

I built secure

Строитель, значит.

4,784 commits [848,342 ++ | 708,361 –]

https://github.com/onetimesecret/onetimesecret/graphs/contributors

~ allows you to send sensitive information in a safe way knowing it’s seen by one person only.

Если бы он сказал ‘thinking’ — был бы прав.

~ we decided to err on the side of simplicity.

Languages Ruby 45.9% (30+KLOC) Vue 30.3% TypeScript 20.7% HTML 1.2% Python 0.8% Shell 0.8% Other 0.3%

Желания лезть в их код нет.

Why should I trust you?

General we can’t do anything with your information even if we wanted to (which we don’t). If it’s a password for example, we don’t know the username or even the application that the credentials are for.

Ахахаха! https://github.com/onetimesecret/onetimesecret/issues/281

If you include a passphrase (available under «Privacy Options»), we use it to encrypt the secret. We don’t store the passphrase (only a bcrypted hash) so we can never know what the secret is because we can’t decrypt it.

Мы не храним. Мы не логируем. Мы что угодно!

Ага. В основном.

Beside all that, the code is opensource so you can review the code and/or run your own instance.

А вот это хорошо!

3. Пригорело

https://onetimesecret.com/en/about/

How do you handle data requests from law enforcement or other third parties? ~in most cases, we simply don’t have any data to provide in response to such requests~

ИН МОУСТ КЕЙСИЗ!!! А изредка?

4. К делу

HTTPS for all connections encryption at rest for stored data

Собственно на этом всё. Да, есть TLS. Но данные идут открыто.

Один ключ на бэке: https://docs.onetimesecret.com/en/self-hosting/environment-variables/

SECRET=your-32-char-hex-key           # Secret key for sessions and encryption (REQUIRED) - DO NOT change after setting

Вот рассказывают как отправить «секрет»: https://docs.onetimesecret.com/en/rest-api/v1/create-secrets/

$ curl -X POST -u 'USERNAME:APITOKEN' -d 'secret=SECRET&ttl=NUMBER_IN_SECONDS' https://us.onetimesecret.com/api/v1/share

Ну то-есть так и написать им «ето сикрет».

Query Params secret: the secret value which is encrypted before being stored. There is a maximum length based on your plan that is enforced (1k-10k).

И ещё внимательней:

passphrase: ~ is also used to encrypt the secret and is bcrypted before being stored so we only have this value in transit.

Да. Через ?passphrase=мойчучун отправляешь им пароль. Ну хранить они его не будут, честно. Даже логировать!

Я ничего не смыслю в Ruby. Мне гпт5 пишет, что в apps/api/v1/logic/secrets/base_secret_action.rb.

  1. Подменят данные удалённо — и не заметишь.
  2. Будет у юзера «доверенный сертификат» от начальства (компании\сраны) — им даже клиент подменять не надо будет: снифай себе и снифай.
  3. Логировать будут. И пароль положат себе в файлик, а потом продадут.

5. Под прикрытием MIT LICENSE

Дядька заявляет: безопасно, зуб даю! (я инжинер) Мы шифруем! (и даже httpS — секуре) Вот код: (30к)

И правда ведь шифруют. И канал связи шифрован, сертификат, AES GCM, ключ 256 бит, и всё такое. Но это не то, что ожидаешь. Хотя открыто e2e никто не обещал! И это подло, я считаю. Это либо злой умысел (меня купили\заставили\я и сам рад), либо из корысти (я заработаю\всей правды не скажу), либо что? Что мешает, пусть и в браузере, сделать по-честному шифрование?


И я

А я несколько раз имел неосторожность советовать этот сервис. Стыдно.

P. S. А что, пока я сидел, всюду кроме новостей запретили спойлеры?

 onetimesecret, , криптокопрофилия

BruteForce
()

Посовейтуте ядро для десктопа

Ubuntu, wayland, sway, добротный интел 13-го поколения (ноутбук).

Запускаю сборку чего-нибудь + парочка vscode + фурифокс + громоптица + другая фоновая мелочевка. Начинается фриз интерфейса, прям сразу, вместе с разгоном вентиляторов. При этом, я полагаю, что даже не все ядра задействованы.

Гипотеза 1: дело в ядре.

Гипотеза 2: дело в вяленом.

Советы? Ваш опыт?

Нагуглил linux-cachyos, но я хочу чтобы было опакечено для бубунты/дебиан.


UPD

Поставил 6.12.49-x64v3-xanmod1, посмотрим-поглядим.


UPD2

Фризы присутствуют. Установлено, что в момент фризов RAM полна и происходит заполнение swap (при этом задействовано не более 55% swap).

Последний раз на 70% сборки упал kitty со сборкой и FF.

Попробовал иксы, i3. Сначала обрадовался: курсор двигается, такого фриза как на sway нет. Могу переключать рабочие столы, но окна на них отрисовываются с задержкой примерной равной фризам на sway.


UPD3

Гипотеза 3: гибридная графика.

Но фризы присутствуют во всех трёх режимах:

  • Integrated (когда невидия выключена совсем)
  • Hybrid (когда можно подключить дискретку если надо, вывод всё равно через интеграшку)
  • AsusMuxDgpu (как утверждается, дисплей подключается к дискретке)

 , , ,

BruteForce
()

посоветуйте треды

Привет! Я почти три года в тюрьме – посоветуйте почитать треды, мне их распечатывает Лена, она же пишет этот пост [текст согласован на встрече в сизо]. Помогите еще пжлст Лене печатать треды без иконок, потому что она их убирает вручную [и выбрать интересные треды ей сложно, потому что она не шарит], а в идеале посоветуйте, как сделать версию для печати [чтобы меньше бумаги расходовать с минимумом пробелов и некрупным шрифтом].

UPD: добавляю тег «танцпол»

как добавить пруфпик?

 , ,

BruteForce
()

CRS-13: Возвращаемые ракета-носители теперь еще и пере-используемые.

!Ъ: https://www.youtube.com/watch?v=OPHbqY9LHCs

Ъ: Взлетел, разделился, сел на землю, разделился, улетел.

Земля не плоская. Корабль (Dragon) тоже уже летавший. «Dragon доставит на МКС 2205 кг полезного груза.» Видео комфортно смотрится на ×1.25 скорости, смотреть советую; сам полет смотреть с 15 минуты.

Вики: https://ru.wikipedia.org/wiki/SpaceX_CRS-13

 , , , ,

BruteForce
()

Калькулятор калорий для Android

Ищется сабж. Либо зондо-apk, либо из свободной репы (аля f-droid).

Хотелок особых каких-то нет: над шгоб записывать бжу, массу съеденного, а он бы выдавал результаты.

UPD: Найдено, Simple Diet Diary

 , , ,

BruteForce
()

В поисках терминала

Юзал ROXTerm, но собрал фиш и он ругаеца:

<W> fish: Current terminal parameters have rows and/or columns set to zero.
<W> fish: The stty command can be used to correct this (e.g., stty rows 80 columns 24).

Подскажите годный терминал, чтобы был приятен, но быстро стартовал. Terminator недходит — пистоний скам стартует почти секунду.

 , , , ,

BruteForce
()

Что там растового в фурифоксе на данный момент?

Сабж. Есть знатоки? Стоит ли его с этим всем растовым собирать?

 , ,

BruteForce
()

Geli vs ZFS encryption

Сабж. Сам в вопросе не разбираюсь.

Интересует:

  • Скорость (поддерживает ли ZFS мой aes-ni? geli — да)
  • Комфорт использования для шифрования всей системы
  • Безопасность? AES-XTS везде? Есть ил выбор? Где хранятся ключи?

UPD

В итоге в инсталлере выбрал Auto(ZFS) и поставил галочку Encrypt filesystems. Настроило GELI поверх всего, так что всё почти так же просто, как в опёнке.

 , ,

BruteForce
()

Что делать с VR headset?

Доброго вечера.

Купил VR headset, смартфон уже был. Потыкал видосики на ютабе, ну прикольно. А что дальше?

Как подсоеденить это к пека? В стиме есть некий SteamVR, но что ставить на смартфон для него не сказано.

UPD

Постыкал приложение порнхабовское, немного подтормаживает. VR порно в свободном доступе он-лине нет почти, но на порнолабе пара сотен имеется.

 , ,

BruteForce
()

Legends of Equestria Open Access Release

Сабж.

Ъ: MMMORPG по поням.

Ютаб: https://www.youtube.com/watch?v=vf5-Wytes6w

 

BruteForce
()

Не получается декодирвоать h264 по кадрам

День добрый. Не получается читать h264 видео по кадрам. Ругается avcodec_decode_video2, ошибочка: Invalid data found when processing input

Возможно дело в том, что h264 не поддерживает AV_CODEC_CAP_TRUNCATED, а может и нет (внутри av_read_frame это должно обходиться, как я полагаю).

Код: https://github.com/RussianBruteForce/ffmpeg_opencv

Запускать:

./cv файл

cast Norgat

# скачать нерабочий вариант одним файлом:
wget http://paste.omsklug.com/6772/raw/ -o kek.cpp
# собрать&запустить
g++ kek.cpp -std=c++14 -lavutil -lavcodec -lavformat -lswscale && ./a.out file.name.here

--------------------------------------------------------------

Всё починилось после добавления этой строчки.

avcodec_parameters_to_context(dec_ctx.get(), st->codecpar);

 , , ,

BruteForce
()

MS Code + OpenBSD

Всё еще озабочен переходом на опенек, видео в ютабе починил, остался тачпад + софт. Нравится MS Code для JS, что мешает его собрать под опёнок? Атом вроде работает под фряхой, верно?

 , , ,

BruteForce
()

OpenBSD 6.1 + Intel + Firefox = лаги на youtube

В уже миллионный раз ставлю OpenBSD, на этот раз 6.1 на

hw.machine=amd64
hw.model=Intel(R) Core(TM) i3-4030U CPU @ 1.90GHz
hw.vendor=Acer
hw.product=Aspire E5-571
hw.physmem=8463839232

Иииии в firefox-esr-52 тормозит ютуб. Всё так же дико, жестко. Может надо что-то установить, что не идет в базовой поставке? Очень уж хочется спрыгнуть с ляликс-иглы.

UPD. А, ну да, еще synaptics тачпад не работает как тачпад. На ляниксе фиксилось опциями к ядру «i8042.nomux=1 i8042.reset», как подобное провернуть в бзде?

UPD2. Здесь — http://store.steampowered.com/app/360830 — тоже тормозит.

 , , ,

BruteForce
()

Jerome+Qt5

Братишка, я тут покушать принес: нямка

Либа для «DirectIP» управления Jerome. К производителю никакого отношения не имею, отправил им письмо с ссылкой на репу — не отвечают.

Может кому понадобится.

 , , , ,

BruteForce
()

Компьютер для ноды i2p

Посоветуйте небольшой компьютер дабы использовать дома как ноду i2p.

Почему-то мне хочется, чтобы это был ARM. Это нормально? В какой бюджет можно уложиться? На что обращать внимание, как понять, что, допустим, ubuntu на нём заведется?

Может наоборот, стоит взять что-то на интел атом?

 , , , ,

BruteForce
()

Утечка при работе с ffmpeg

Доброго времени суток.

Помогите разобраться. По мотивам треда было написано нечто, и оно подтекает(?).

↪ valgrind --leak-check=yes ./cv vid
...
==28734== 
==28734== 160,361 (240 direct, 160,121 indirect) bytes in 10 blocks are definitely lost in loss record 280 of 280
==28734==    at 0x4C2FFC6: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==28734==    by 0x4C300D1: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==28734==    by 0x54FF06F: av_malloc (in /usr/lib/x86_64-linux-gnu/libavutil-ffmpeg.so.54.31.100)
==28734==    by 0x54FF37D: av_mallocz (in /usr/lib/x86_64-linux-gnu/libavutil-ffmpeg.so.54.31.100)
==28734==    by 0x54ECADE: av_buffer_create (in /usr/lib/x86_64-linux-gnu/libavutil-ffmpeg.so.54.31.100)
==28734==    by 0x54ED053: av_buffer_realloc (in /usr/lib/x86_64-linux-gnu/libavutil-ffmpeg.so.54.31.100)
==28734==    by 0x58A4BF6: av_new_packet (in /usr/lib/x86_64-linux-gnu/libavcodec-ffmpeg.so.56.60.100)
==28734==    by 0x6C1A2C4: ??? (in /usr/lib/x86_64-linux-gnu/libavformat-ffmpeg.so.56.40.101)
==28734==    by 0x6C1F809: ??? (in /usr/lib/x86_64-linux-gnu/libavformat-ffmpeg.so.56.40.101)
==28734==    by 0x6C20098: ??? (in /usr/lib/x86_64-linux-gnu/libavformat-ffmpeg.so.56.40.101)
==28734==    by 0x6CD7750: ??? (in /usr/lib/x86_64-linux-gnu/libavformat-ffmpeg.so.56.40.101)
==28734==    by 0x6CD8360: ??? (in /usr/lib/x86_64-linux-gnu/libavformat-ffmpeg.so.56.40.101)
==28734== 
==28734== LEAK SUMMARY:
==28734==    definitely lost: 240 bytes in 10 blocks
==28734==    indirectly lost: 160,121 bytes in 20 blocks
==28734==      possibly lost: 2,696 bytes in 21 blocks
==28734==    still reachable: 229,938 bytes in 923 blocks
==28734==                       of which reachable via heuristic:
==28734==                         newarray           : 3,096 bytes in 19 blocks
==28734==         suppressed: 0 bytes in 0 blocks
...

Код: https://github.com/RussianBruteForce/ffmpeg_opencv

 , ,

BruteForce
()

VideoCapture из буффера

Добрый день!

Программа принимает по сети (via WebSocket) видеоролик, допустим это vp8, соответственно у меня есть некоторая память, которая его содержит. Предположим это std::vector<uint8_t> video.

Как скормить это OpenCV? Может использовать что-то стороннее,бить на кадры и делать из них cv::Mat?

 , , ,

BruteForce
()

RSS подписка на новые темы