← All posts tagged code

AlexVK

CVE-2016-2183
Block cipher algorithms with block size of 64 bits (like DES and 3DES) birthday attack known as Sweet32

This is a cipher vulnerability, not limited to any specific SSL/TLS software implementation. DES and Tripple DES (3DES) block ciphers with a block size of 64 bits, have a birthday bound of approximately 4 billion blocks (or 2 to the power of 32, hence the name of this vulnerability). A man-in-the-middle (MitM) attacker, who is able to capture a large amount of encrypted network traffic, can recover sensitive plain text data.
CVE: CVE-2016-2183
NVD: CVE-2016-2183
CVSSv2: AV:N/AC:L/Au:N/C:P/I:N/A:N

Reference:
https://sweet32.info/
https://access.redhat.com/security/cve/cve-2016-2183
https://www.openssl.org/blog/blog/2016/08/24/sweet32/
Evidence:
Cipher Suite: TLSv1_1 : DES-CBC3-SHA
Cipher Suite: TLSv1_2 : DES-CBC3-SHA
Remediation:
This issue can by avoided by disabling block ciphers of 64 bit length (like DES/3DES) in all the SSL/TLS servers. Exact procedure depends on the actual implementation. Please refer to the documentation of your SSL/TLS server software and actual service software (http server, mail server, etc).

AlexVK

Ну вот что ему надо...
51255 error Linux 4.8.6-201.fc24.x86_64
51256 error argv "/usr/bin/node" "/usr/bin/npm" "install"
51257 error node v4.6.1
51258 error npm  v2.15.9
51259 error code EPEERINVALID
51260 error peerinvalid The package csslint@1.0.4 does not satisfy its siblings' peerDependencies requirements!
51260 error peerinvalid Peer csslint-loader@1.0.0 wants csslint@^0.10.0

AlexVK

ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:ECDHE-RSA-AES128-GCM-SHA256:AES256+EECDH:DHE-RSA-AES128-GCM-SHA256:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";

AlexVK

Java memory used: 	3,281 Mb / 18,204 Mb
Nb of http sessions: 	1,542	
Nb of active threads
(current http requests): 	0	
System load	0.16

Nb of http sessions: 1,542  
Nb of active threads
(current http requests): 0

$vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  1      0 4435432 550564 16251416    0    0    36   230    0    0  2  1 96  1  0

netstat -n|grep ESTABLISHED| wc -l
32

Mean age of http sessions (min): 27 
Memory: Non heap memory = 603 Mb (Perm Gen, Code Cache),
Loaded classes = 33,382,
Garbage collection time = 6,435,803 ms,
Process cpu time = 376,865,670 ms,
Committed virtual memory = 29,079 Mb,
Free physical memory = 4,715 Mb,
Total physical memory = 29,970 Mb,
Free swap space = 0 Mb,
Total swap space = 0 Mb

AlexVK

http://company.yandex.ru/job/vacancies/dev_java_infra.xml
Интересны вопросы
1) Перечислите все проблемы, которые вы видите в данном коде:
2) Какие из следующих стандартных контейнеров позволяют найти в них элемент за O(log(n)) по его значению?
3) Опустим
Напишите  lock-free реализацию класса с методом BigInteger next(), который  возвращает элементы последовательности Фибоначчи. Код должен корректно  работать в многопоточной среде.
4) Есть  таблица в MySQL-базе, в которую записываются регистрирующиеся на  сервисе пользователи. Затем, если пользователь удаляется с сервиса, в  соответствующей записи в этой таблице появляется время удаления. Логин  можно использовать повторно, если на момент регистрации в базе нет  такого же действующего логина.

AlexVK

А есть способ утащить домен? :)
В общем прогнали, домен увели какие то корейцы. Лет 7 держат уже, отдавать не хотят хотя марка зарегистрирована. Предлагают совсем неразумную сумму...
В общем, интересует как его вернуть обратно :)
Registrar : NETPIA.COM, INC.(http://www.ibi.net)
        Administrative Contact :
                Noorinet        suda@dreamwiz.com
                Gyeongju-si Dongcheon-dong, Gyeongsangbuk-do, KR
                +82.7070989900
        Technical Contact :
                Noorinet        suda@dreamwiz.com
                Gyeongju-si Dongcheon-dong, Gyeongsangbuk-do, KR
                +82.7070989900
        Billing Contact :
                Noorinet        suda@dreamwiz.com
                Gyeongju-si Dongcheon-dong, Gyeongsangbuk-do, KR
                +82.7070989900
        Record created on........: 07-Feb-2007 EDT.
        Record expires on........: 07-Feb-2014 EDT.
        Record last updated on...: 25-Feb-2013 EDT.

AlexVK

Довольно интересно
#номер_поста *метка
Всё нормально если пробел один.
Но если больше одного то трактуется как комментарий
пример:
#123456 *labe1 метку присвоит
#123456    *label1  напишет комментарий

AlexVK

Ломал голову: и почему у меня tar не хочет вместо абсолютного пути делать относительный. В man нашёл опцию -С --directory, а оно и не работает...
Оказалось всё просто, опция указывается перед каждым (!!!) файлом или каталогом для архивации,
т.е. пример
tar -C mydir -cvfz archive.tar.gz  file 
работать не будет
А пример
tar -cvfz archive.tar.gz -C mydir file
успешно работает, и для многих целей архивации будет выглядеть, похоже, примерно так
tar -cvfz archive.tar.gz -C mydir1 file1 -С mydir2 file2 -C mydir3 file3...
Иными словами порядок аргументов очень важен.

AlexVK

Чтобы не городить (свой) огород с mime типом по File (т.е. не изобретать велосипед хотя бы в этот раз)
http://stackoverflow.com/questions/51438/getting-a-files-mime-type-in-java
а также статья с примерами по ссылке оттуда
http://www.rgagnon.com/javadetails/java-0487.htm
 <http://www.rgagnon.com/javadetails/java-0487.html>Способ с JAF- ерунда
new MimetypesFileTypeMap().getContentType(f)
он хоть и потокобезопасный но с png картинкой облажался, обозначив её как Application/octet-stream
А вот 
mimeType= URLConnection.guessContentTypeFromName(file.getName());
вполне работает с картинками, что мне в данном случае и требовалось.

AlexVK

Победил таки 4geo ( 4geo.ru ) в Fedora 17 x86_64
cat 4geo.repo 
[4geo]
name=4Geo
enabled=1
autorefresh=1
baseurl=http://repository.4geo.ru/opensuse/12.1/i386/
type=rpm-md
keeppackages=0

И далее, поставил 4geo-core а также пакет со своим городом.
Не запускается, у меня ругалось на libpng14.so.14
Далее, я делал так
wget ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.4.12.tar.gz
tar -xzf libpng-1.4.12.tar.gz
cd libpng-1.4.12
./configure --prefix=/usr --build=i686-pc-linux-gnu "CFLAGS=-m32" "CXXFLAGS=-m32" "LDFLAGS=-m32"
make
Но не спешу make install
Хотя здесь достаточно исправить prefix с тем чтобы библиотека помещалась на /opt/4geo/lib
Либо вручную туда скопировать после установки.
Далее 4geo запустился.

AlexVK

Что-то у меня роутер гонит (Asus WL500gp v2).
Прошивка - от энтузиастов http://code.google.com/p/wl500g/
свежая. Только что перепрошивался (думал что поможет, а нет).
Суть.
Пытаюсь зайти на blogspot.com. Не выходит. Ни в какую.
Далее.
ping blogspot.com
PING blogspot.com (127.0.0.1): 56 data bytes

127.0.0.1 О_О

nslookup blogspot.com
роутер ответил 127.0.0.1

Оппа. Захожу по ssh на роутер.
nslookup blogspot.com

Name:      blogspot.com
Address 1: 127.0.0.1 localhost.localdomain

Ответ по dns провайдера - норма. По DNS гугла - тем более норма.
Куда рыть?

AlexVK

Which version of oc4j I am using?
1) Check Server header in HTTP headers. 
For example with wget or curl;   
wget -S <url-to-server> 
curl -I <url-to-server>   or with browser, which can show HTTP headers.  There should be a header something like  
Server: Oracle-Application-Server-10g/10.1.3.1.0 Oracle-HTTP-Server  
2) If you have access to the OC4J JAR file, you can do:  
java -jar oc4j.jar -version

AlexVK

Набросал небольшой скрипт для md5-изации (составления хеш-сумм) файлов. Иногда очень полезно. Понимает файлы у которых в названиях пробелы (удивлён что у меня такие оказались)
#!/bin/sh

OLDIFS="$IFS"
IFS=:

for f in $@
do
    echo "$f"
    if test -f "$f"; then
    (
        md5sum -b "$f" > "$f".md5
    )
    fi
done
IFS="$OLDIFS"